- 躲避TNT
求躲避TNT简便解法
- @ 2022-12-9 23:17:15
l,s = [],0
for q in range(n**2):
l.append(1)
for w in range(m):
x,y = map(int,input().split())
p = (x-1)*n+y-1
if l[p] != 0:
if p<n:
if p == 0:
l[p+1],l[p+n] = 0,0
elif p == n-1:
l[p-1],l[p+n] = 0,0
else:
l[p-1],l[p+1],l[p+n] = 0,0,0
elif p>=n*(n-1):
if p == n*(n-1):
l[p-n],l[p+1] = 0,0
elif p == n**2-1:
l[p-n],l[p-1] = 0,0
else:
l[p-1],l[p+1],l[p-n] = 0,0,0
elif p%n == 0:
if p == 0:
l[p+1],l[p+n] = 0,0
elif p == n*(n-1):
l[p+1],l[p-n] = 0,0
else:
l[p-n],l[p+n],l[p+1] = 0,0,0
elif p%n == n-1:
if p == n-1:
l[p+n],l[p-1] = 0,0
elif p == n**2-1:
l[p-n],l[p-1] = 0,0
else:
l[p-1],l[p+n],l[p-n] = 0,0,0
else:
l[p+n],l[p-n],l[p+1],l[p-1] = 0,0,0,0
l[p] = 0
for o in l:
if o == 1:
s+=1
if s == 0:
print('You Died!')
else:
print(s)
for i in range(n):
for j in range(n):
print(l[n*i+j],end=' ')
print()
求简便解法(此代码运行时间过长,约10000ms)😄
1 条评论
-
知名不具 (user89) @ 2025-10-20 15:34:26
hehe
- 1
信息
- ID
- 1909
- 时间
- ms
- 内存
- MiB
- 难度
- 9
- 标签
- 递交数
- 42
- 已通过
- 4
- 上传者