关注
'''
10,10
0,0,0,0,0,0,0,0,0,0
0,0,0,1,1,0,1,0,0,0
0,1,0,0,0,0,0,1,0,1
1,0,0,0,0,0,0,0,1,1
0,0,0,1,1,1,0,0,0,1
0,0,0,0,0,0,1,0,1,1
0,1,1,0,0,0,0,0,0,0
0,0,0,1,0,1,0,0,0,0
0,0,1,0,0,1,0,0,0,0
0,1,0,0,0,0,0,0,0,0
output
6,8
'''
import sys
option = [(-1, -1), (-1, 0), (0, -1), (1, -1), (-1, +1), (0, +1), (+1, +1), (+1, 0)]
def get_max_num(list_num, m, n):
list_temp = [[0 for i in range(m)] for j in range(n)]
stacks = []
P = 0
Q = 0
q = 0
for i in range(m):
for j in range(n):
if list_num[i][j] == 1 and list_temp[i][j] == 1:
continue
if list_num[i][j] == 1 and list_temp[i][j] == 0:
P += 1
# print((i,j))
list_temp[i][j] = 1
q += 1
for s in option:
if (i + s[0]) < m and (j + s[1]) < n \
and (i + s[0]) >= 0 and (j + s[1]) >= 0:
if list_num[i + s[0]][j + s[1]] == 1 and list_temp[i + s[0]][j + s[1]] != 1:
stacks.append((i + s[0], j + s[1]))
q += 1
# print(stacks)
while(stacks):
list_n = []
for stack_index in range(len(stacks)):
st = stacks[stack_index]
list_temp[st[0]][st[1]] = 1
for s in option:
if (st[0] + s[0]) < m and (st[1] + s[1]) < n \
and (st[0] + s[0]) >= 0 and (st[1] + s[1]) >= 0:
if list_num[st[0] + s[0]][st[1] + s[1]] == 1 \
and list_temp[st[0] + s[0]][st[1] + s[1]] == 0:
if(st[0] + s[0], st[1] + s[1]) not in stacks:
stacks.append((st[0] + s[0], st[1] + s[1]))
q += 1
list_n.append(stack_index)
# print(stacks, list_n)
list_n.sort(reverse = True)
for ls in list_n:
stacks.pop(ls)
Q = max(Q, q)
q = 0
return P, Q
if __name__ == "__main__":
m, n = sys.stdin.readline().strip().split(',')
list_num = []
for i in range(int(m)):
# 读取每一行
line = sys.stdin.readline().strip()
# 把每一行的数字分隔后转化成int列表
values = list(map(int, line.split(',')))
list_num.append(values)
if m == 0 and n == 0:
print('0,0')
else:
a, b = get_max_num(list_num, int(m), int(n))
print(str(a)+','+str(b))
80...就是过不去
查看原帖
点赞 评论
相关推荐
投递国家电网等公司7个岗位 >
点赞 评论 收藏
转发
牛客热帖
正在热议
# 牛客帮帮团来啦!有问必答 #
1116293次浏览 16782人参与
# 简历无回复,你会继续海投还是优化再投? #
24160次浏览 346人参与
# OPPO开奖 #
8460次浏览 176人参与
# 和牛牛一起刷题打卡 #
16184次浏览 1480人参与
# 通信硬件薪资爆料 #
261053次浏览 2447人参与
# 互联网公司评价 #
95931次浏览 1248人参与
# 不去互联网可以去金融科技 #
9686次浏览 129人参与
# 通信和硬件还有转码的必要吗 #
10213次浏览 98人参与
# 提前批和秋招有什么区别 #
29946次浏览 721人参与
# 参加过提前批的机械人,你们还参加秋招么 #
14303次浏览 349人参与
# 面试被问第一学历差时该怎么回答 #
19030次浏览 211人参与
# 你收到了团子的OC了吗 #
534636次浏览 6350人参与
# 如何看待offer收割机的行为 #
248718次浏览 3481人参与
# 现在还是0offer,延毕还是备考 #
411699次浏览 4877人参与
# 应届生初入职场,求建议 #
35590次浏览 814人参与
# 实习生应该准时下班吗 #
95231次浏览 715人参与
# 工作两年想退休了 #
20096次浏览 261人参与
# 晒一晒我的offer #
3796310次浏览 58282人参与
# 你们的毕业论文什么进度了 #
603512次浏览 6767人参与
# 你的秋招进行到哪一步了 #
399549次浏览 6721人参与
# 本周投递记录 #
222817次浏览 5414人参与
# 你的秋招进展怎么样了 #
561207次浏览 13984人参与