結果
問題 | No.228 ゆきこちゃんの 15 パズル |
ユーザー |
![]() |
提出日時 | 2023-01-17 12:36:31 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 45 ms / 5,000 ms |
コード長 | 669 bytes |
コンパイル時間 | 332 ms |
コンパイル使用メモリ | 82,468 KB |
実行使用メモリ | 53,960 KB |
最終ジャッジ日時 | 2025-01-02 10:56:38 |
合計ジャッジ時間 | 2,363 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 17 |
ソースコード
def f(x, y): return (4 * x + y + 1)%16 A = [] nx, ny = 0, 0 for i in range(4): A.append(list(map(int, input().split()))) for j in range(4): if A[i][j] == 0: nx = i ny = j dx = [0, 1, 0, -1] dy = [1, 0, -1, 0] for _ in range(16): for k in range(4): x, y = nx + dx[k], ny + dy[k] if x < 0 or x > 3 or y < 0 or y > 3: continue if A[x][y] != f(nx, ny): continue A[x][y], A[nx][ny] = A[nx][ny], A[x][y] nx, ny = x, y break for i in range(4): for j in range(4): if A[i][j] != f(i, j): print("No") exit() print("Yes")