zoukankan      html  css  js  c++  java
  • hihocoder刷题 扫雷游戏

    题目1 : 扫雷游戏

    时间限制:10000ms
    单点时限:1000ms
    内存限制:256MB

    描述

    给定一个N × N的方格矩阵,其中每个格子或者是'*',表示该位置有一个地雷;或者是'.',表示该位置没有地雷:
    *..*
    ..*.
    ....
    ****

    现在小Hi希望你对于每一个'.',计算它周围8个方格中一共有多少颗地雷。并且用计算出的地雷数替换原来的'.':

    *22*
    12*2
    2443
    ****

    输入

    第一行包含一个整数N,代表矩阵的大小。 (1 ≤ N ≤ 100)  

    以下是一个N × N的矩阵,由字符'.'和'*'组成。

    输出

    一个N × N的矩阵,表示答案。

    样例输入

    4  
    *..*  
    ..*.  
    ....
    ****

    样例输出

    *22*    
    12*2  
    2443
    ****
    def main():
        number=input()
        li=[]
        for i in range(int(number)):
            li.append(list(input()))
    
        for i in range(int(number)):
            for j in range(int(number)):
                temp = 0
                if li[i][j]=='.':
                    if i-1>=0 and j-1>=0:
                        if li[i-1][j-1]=='*':
                            temp+=1
                    if i-1>=0:
                        if li[i-1][j]=='*':
                            temp+=1
                    if i-1>=0 and j+1<=int(number)-1:
                        if li[i-1][j+1]=='*':
                            temp+=1
                    if j-1>=0:
                        if li[i][j-1]=='*':
                            temp += 1
                    if j+1<=int(number)-1:
                        if li[i][j+1]=='*':
                            temp += 1
                    if i+1<=int(number)-1 and j-1>=0:
                        if li[i+1][j-1]=='*':
                            temp += 1
                    if i+1<=int(number)-1:
                        if li[i+1][j]=='*':
                            temp+=1
                    if i+1<=int(number)-1 and j+1<=int(number)-1:
                        if li[i+1][j+1]=='*':
                            temp+=1
                    li[i][j]=temp
        for i in li:
            for j in i:
                print(j,end="")
            print()
    if __name__ == '__main__':
        main()
    py3code
  • 相关阅读:
    CentOS6.5系统服务
    Linux下查看文件内容时去掉空行和#开头的注释行
    sql去重复(RecordNum )
    bootstrap-fileinput使用
    javascript事件失效l
    vs2015里,发布OSGI.NET
    视频允许播放禁止下载
    zTree模糊查询人员姓名:getNodesByParamFuzzy
    OSGI.NET,请求因HTTP状态404 失败:Not Found
    异常
  • 原文地址:https://www.cnblogs.com/qflyue/p/8283356.html
Copyright © 2011-2022 走看看