NOI python 1.8-肿瘤面积求解

题目链接:http://noi.openjudge.cn/ch0108/18/
代码:

n = int(input())
sum = 0
l = [["/"] * (n + 2) for i in range(n + 2)]
a = []
b = []
for i in range(1,n+1) :
    x = list(map(int,input().split()))
    for j in range(1,n+1) :
        l[i][j] = x[j-1]
for i in range(1,n+1) :
    for j in range(1,n+1) :
        if l[i][j] == 0 :
            a.append(i)
            a.append(j)
            break
    if a != [] :
        break
for i in range(n+1,-1,-1) :
    for j in range(n+1,-1,-1) :
        if l[i][j] == 0 :
            b.append(i)
            b.append(j)
            break
    if b != [] :
        break
print((a[0]-a[-1]-1)*(b[0]-b[-1]-1))

思路:遍历列表,发现0之后将i,j的值放到a,然后倒序遍历,最后计算255的数量。
问题:提交时显示Wrong Answer

我的思路可能和你不一样,不过刚才已经提交通过了

img

n = int(input())
pic = []
for i in range(n):
    pic.append(list(map(int, input().split())))

col = []
row = []
for i in range(n):
    j = sum(row[i] for row in pic)
    col.append(j)
    k = sum(pic[i])
    row.append(k)

min_col = min(col)
min_row = min(row)

x = []
y = []
for i in range(n):
    if col[i] == min_col:
        x.append(i)
    if row[i] == min_row:
        y.append(i)

print((x[1]-x[0]-1)*(y[1]-y[0]-1))