結果
問題 | No.1851 Regular Tiling |
ユーザー |
![]() |
提出日時 | 2023-06-10 00:19:20 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,561 bytes |
コンパイル時間 | 306 ms |
コンパイル使用メモリ | 82,816 KB |
実行使用メモリ | 79,900 KB |
最終ジャッジ日時 | 2025-01-02 06:49:13 |
合計ジャッジ時間 | 4,663 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 1 WA * 13 |
ソースコード
import sysinput = sys.stdin.readlinedef rot90(A):return list(zip(*(A[::-1])))T = int(input())for _ in range(T):H, W = map(int, input().split())flag = 0if H > W:flag = 1H, W = W, Hif H == 1:if W % 3 == 1:L = [0, 1, 1] * 50else:L = [1, 1, 0] * 50ans = [L[:W]]if flag:ans = rot90(ans)for a in ans:print(*a)elif H == 2:if W % 3 == 1:L = [1, 2, 2] * 50else:L = [2, 2, 1] * 50ans = [L[:W], L[:W]]if flag:ans = rot90(ans)for a in ans:print(*a)else:L = [[0] * W for i in range(H)]cnt = 0length = 0if H % 2 == 0:if W % 2 == 0:length = H + W - 1else:length = Welse:if W % 2 == 0:length = Helse:length = 0if length % 3 == 1:temp = [0, 1, 1] * 100else:temp = [1, 1, 0] * 100for i in range(H):for j in range(W-1, -1, -1):if i % 2 == 1 and j % 2 == 1:L[i][j] = 0else:L[i][j] = 2if (j == W - 1 and W % 2 == 0) or (i == H - 1 and H % 2 == 0):L[i][j] = temp[cnt]cnt += 1if flag:L = rot90(L)for a in L:print(*a)