結果
問題 |
No.1225 I hate I hate Matrix Construction
|
ユーザー |
|
提出日時 | 2020-09-11 22:23:31 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
|
実行時間 | - |
コード長 | 1,027 bytes |
コンパイル時間 | 685 ms |
コンパイル使用メモリ | 82,048 KB |
実行使用メモリ | 150,656 KB |
最終ジャッジ日時 | 2024-12-27 15:25:30 |
合計ジャッジ時間 | 22,279 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 28 WA * 3 TLE * 4 |
ソースコード
n = int(input()) s = list(map(int, input().split())) # 行情報 t = list(map(int, input().split())) # 列情報 # 0: or 0, 1: or 1, 2: and 1 u = [[False] * n for _ in range(n)] ans = 0 for i in range(n): if s[i] == 2: for j in range(n): u[i][j] = True ans += 1 if t[i] == 2: for j in range(n): u[j][i] = True ans += 1 for i in range(n): for j in range(n): if s[i] == 1 and t[j] == 1: ok1 = False ok2 = False for k in range(n): ok1 |= u[i][k] ok2 |= u[k][j] if not ok1 and not ok2: ans += 1 u[i][j] = True for i in range(n): for j in range(n): if s[i] == 1 and t[j] == 1: ok1 = False ok2 = False for k in range(n): ok1 |= u[i][k] ok2 |= u[k][j] if not (ok1 and ok2): ans += 1 u[i][j] = True print(ans)