作者babufong (哔哔)
看板puzzle
标题[中译] ProjectEuler 313 Sliding game
时间Sun Dec 5 12:24:41 2010
313. Sliding game
http://projecteuler.net/index.php?section=problems&id=313
在「滑动」这游戏中,硬币筹码可能会被水平或垂直的移动到棋盘的空格中。
这游戏的目标就是把红色筹码从最左上角的格子移动到最右下角的格子,游戏最初的空格
都是在棋盘的最右下角。
举例来说,下图就是起始於一个 2 * 2 的棋盘,总共只需花费5步就能完成目标。
┌─┬─┐ ┌─┬─┐ ┌─┬─┐
│
●│
●│ │
●│
●│ │ │
●│
├─┼─┤ 第一步→ ├─┼─┤ 第二步→ ├─┼─┤ 第三步→
│
●│ │ │ │
●│ │
●│
●│
└─┴─┘ └─┴─┘ └─┴─┘
┌─┬─┐ ┌─┬─┐ ┌─┬─┐
│
●│ │ │
●│
●│ │
●│
●│
├─┼─┤ 第四步→ ├─┼─┤ 第五步→ ├─┼─┤ 完成!
│
●│
●│ │
●│ │ │ │
●│
└─┴─┘ └─┴─┘ └─┴─┘
用 S(m,n) 来表示在一个 m * n 的棋盘上完成「滑动」目标所需的的最小步数。
例如 S(5,4) = 25 即 5 * 4 的棋盘只要25步就可以完成。
在 p < 100 且 p 为质数的条件下,可以找到5482种棋盘,且S(m,n) = p^2。
那在 p < 10^6 且 p 为质数的条件下,可以找到几种棋盘,且S(m,n) = p^2?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 125.224.11.229
1F:推 puzzlez:题目感觉有点变态= = 12/05 12:33
2F:推 xphacker:小变态>///< 12/05 15:09