兴奋的


私信TA

用户名:dotcpp0717255

访问量:383

签 名:

等  级
排  名 15485
经  验 839
参赛次数 0
文章发表 2
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

TA的其他文章

解题思路:
整比较暴力,不过固定9阶方阵,时间不长

定义两个元素相同菌群矩阵,遍历第一个矩阵将结果记录到新的矩阵中


注意事项:
每天更新矩阵时用深拷贝copy.deepcopy(),保证两矩阵地址更不同,互不影响

参考代码:

import copy
m, day = map(int,input().split())
martix = [[0 for i in range(9)] for i in range(9)]
martix[4][4] = m
direction = [(-1,-1),(-1,0),(-1,1),(0,1),(1,1),(1,0),(1,-1),(0,-1)]
martix1 = copy.deepcopy(martix)
for d in range(day):
    for i in range(9):
        for j in range(9):
            if martix[i][j] != 0:
                martix1[i][j] -= martix[i][j]
                martix1[i][j] += 2*martix[i][j]
                for dx, dy in direction: #八个方向
                    x, y = dx + i, dy + j
                    if 0 <= x <= 8 and 0 <= y <= 8:
                        martix1[x][y] += martix[i][j]
    martix = copy.deepcopy(martix1)#更新矩阵

for i in range(9):
    for j in range(9):
        print(martix[i][j], end = ' ')
    print()


 

0.0分

2 人评分

  评论区

  • «
  • »