結果
| 問題 |
No.228 ゆきこちゃんの 15 パズル
|
| コンテスト | |
| ユーザー |
yaoshimax
|
| 提出日時 | 2015-06-19 22:59:34 |
| 言語 | Python2 (2.7.18) |
| 結果 |
AC
|
| 実行時間 | 13 ms / 5,000 ms |
| コード長 | 778 bytes |
| コンパイル時間 | 73 ms |
| コンパイル使用メモリ | 6,912 KB |
| 実行使用メモリ | 6,272 KB |
| 最終ジャッジ日時 | 2024-07-07 04:11:46 |
| 合計ジャッジ時間 | 1,032 ms |
|
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 17 |
ソースコード
table=[map(int,raw_input().split()) for i in range(4)]
default=[[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,0]]
x,y=3,3
d=[(0,1),(0,-1),(1,0),(-1,0)]
while table[x][y]!=0:
ok = False
for dx,dy in d:
#print dx,dy
nx,ny=x+dx,y+dy
if nx>=0 and ny>=0 and nx <4 and ny<4:
if default[nx][ny]==table[x][y]:
ok=True
#print nx,ny,"<=>",x,y
default[nx][ny],default[x][y]=default[x][y],default[nx][ny]
x,y=nx,ny
break
if ok==False:
break
yes=True
for i in range(4):
for j in range(4):
#print default[i][j],
if table[i][j]!=default[i][j]:
yes=False
break
#print
if yes:
print "Yes"
else:
print "No"
yaoshimax