結果
| 問題 | No.228 ゆきこちゃんの 15 パズル |
| コンテスト | |
| ユーザー |
fmhr
|
| 提出日時 | 2015-06-20 00:32:44 |
| 言語 | Go (1.23.4) |
| 結果 |
AC
|
| 実行時間 | 2 ms / 5,000 ms |
| コード長 | 832 bytes |
| コンパイル時間 | 10,667 ms |
| コンパイル使用メモリ | 236,320 KB |
| 実行使用メモリ | 6,820 KB |
| 最終ジャッジ日時 | 2024-10-10 19:05:23 |
| 合計ジャッジ時間 | 11,738 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 17 |
ソースコード
package main
import (
"fmt"
)
func main() {
var x [4][4]int
var x2 [4][4]int
z := 0
z2 := 1
var si, sj int
for i := 0; i < 4; i++ {
for j := 0; j < 4; j++ {
fmt.Scan(&z)
x[i][j] = z
x2[i][j] = z2
z2++
if z == 0 {
si = i
sj = j
}
}
}
x2[3][3] = 0
//fmt.Println(x2)
a := [4]int{0, 1, 0, -1}
b := [4]int{1, 0, -1, 0}
for q := 0; q < 16; q++ {
for k := 0; k < 4; k++ {
if si+a[k] < 0 || si+a[k] > 3 || sj+b[k] < 0 || sj+b[k] > 3 {
continue
}
if x2[si][sj] == x[si+a[k]][sj+b[k]] {
x[si+a[k]][sj+b[k]], x[si][sj] = x[si][sj], x[si+a[k]][sj+b[k]]
si = si+a[k]
sj = sj+b[k]
}
}
}
f := 0
for i := 0; i < 4; i++ {
for j := 0; j < 4; j++ {
if x[i][j] != x2[i][j] {
f = 1
}
}
}
if f == 0 {
fmt.Println("Yes")
} else {
fmt.Println("No")
}
}
fmhr