AtCoder ABC 224 B – Mongeness Python解説

スポンサーリンク

Mongeness

縦 H 行、横 W 列のマス目があり、各マスには 1 つの整数が書かれています。 上から i 行目、左から j 列目のマスに書かれている整数は Ai,jです。マス目が下記の条件を満たすかどうかを判定してください。

1≤i1<i2≤H および 1≤j1<j2≤W を満たすすべての整数の組 (i1, i2, j1, j2) について、Ai1,j1+Ai2,j2≤Ai2,j1+Ai1,j2が成り立つ。

AtCoder Beginner Contest「Mongeness」

与えられるマス目が条件(Ai1j1 + Ai2j2 <= Ai2j1 + Ai1j2)を満たすかを答える問題です。条件を満たすかどうかはfor文の4重ループを使って、マス目をひとつずつ調べていくのがいいと思います。

h, w = map(int, input().split())
a = [list(map(int, input().split())) for _ in range(h)]

flag = True

for i1 in range(h-1):
    for i2 in range(i1+1, h):
        for j1 in range(w-1):
            for j2 in range(j1+1, w):
                if a[i1][j1] + a[i2][j2] > a[i2][j1] + a[i1][j2]:
                    flag = False
                    break
                    
if flag:
    print("Yes")
else:
    print("No")

AtCoderB問題

Posted by cheese