ABC224 B - Mongeness

atcoder.jp

解答

h,w = map(int,input().split())
a = [[0]*w]*h
flag = False

for i in range(h):
    a[i] = list(map(int,input().split()))
for i in range(h-1):
    for j in range(w-1):
        if (a[i][j]+a[i+1][j+1]) > (a[i+1][j]+a[i][j+1]):
            flag = False
            break
        else:
            flag = True
if flag:
    print('Yes')
else:
    print('No')

最初に提出した解答(WA)

h,w = map(int,input().split())
a = [[0]*w]*h
flag = False

for i in range(h):
    a[i] = list(map(int,input().split()))
for i in range(h-1):
    for j in range(w-1):
        if (a[i][j]+a[i+1][j+1]) <= (a[i+1][j]+a[i][j+1]):
            flag = True
        else:
            flag = False
if flag:
    print('Yes')
else:
    print('No')

WAの理由は、一度でも条件に合わない組み合わせが出たらその時点でNoだということを忘れていたからでした
早くBを瞬殺できるようになりたい