結果
| 問題 | No.3724 Domination |
| コンテスト | |
| ユーザー |
sig
|
| 提出日時 | 2026-09-21 21:06:12 |
| 言語 | PyPy3 (7.3.23 + ACL) |
| 結果 |
AC
不安定
|
| 実行時間 | 295 ms / 2,000 ms |
| + 771µs | |
| コード長 | 919 bytes |
| 記録 | |
| コンパイル時間 | 75 ms |
| コンパイル使用メモリ | 82,128 KB |
| 実行使用メモリ | 92,680 KB |
| 最終ジャッジ日時 | 2026-09-21 21:06:29 |
| 合計ジャッジ時間 | 15,964 ms |
|
ジャッジサーバーID (参考情報) |
judge3_0 / judge2_0 |
(要ログイン)
| サブタスク | 配点 | 結果 |
|---|---|---|
| 部分点 | 20 % | AC * 8 |
| 満点 | 80 % | AC * 52 |
| 合計 | 2.5 * 100% = 250 点 |
ソースコード
t = int(input()) for _ in range(t): n = int(input()) r = list(map(int, input().split())) c = list(map(int, input().split())) if n == 2: print(-1) continue if c.count(c[0]) == n and n <= 4: if n == 1: print(1) else: print(-1) continue ans = [[r[i]]*n for i in range(n)] if c.count(c[0]) == n: now = 0 for i in range(n): if r[i] == c[0]: for j in range(n): ans[j][i] = c[0] else: ans[i][i] = c[0] else: an = [] lis = list(range(n)) for i in range(n-1): c1 = lis.pop() if r[c1] == c[i]: c2 = lis.pop() an.append(c2) ans[c2][i] = c[i] lis.append(c1) else: an.append(c1) ans[c1][i] = c[i] if r[lis[-1]] != c[-1]: ans[lis[-1]][-1] = c[-1] else: for i in range(n-1): if c[-1] != c[i]: bef = an[i] ans[bef][i] = r[bef] ans[bef][-1] = c[-1] ans[lis[-1]][i] = c[i] break for i in ans: print(*i)
sig