【发布时间】:2017-02-02 03:03:18
【问题描述】:
给定 nxn 的网格大小,将一个骰子放在左上角的区域 (1,1) 上,数字 6 朝下,5 面向 (1,2),4 面向 (2,1)。骰子将以螺旋方式(顺时针)滚动,以用数字填充每个字段(仅一次)。计算打印数字的总和。当 n=5(结果 = 81)时,骰子的移动和打印的数字的可视化表示
01 02 03 04 05
16 17 18 19 06
15 24 25 20 07
14 23 22 21 08
13 12 11 10 09
6 5 1 2 6
4 5 3 2 4
1 1 3 1 1
3 2 3 5 3
6 5 1 2 6
这是一个家庭作业问题,但如果不了解所有可能的情况,我无法弄清楚如何有效地做到这一点。如果有人能给我一个解决方案和解释,那就太棒了(不需要代码,我想自己做)。
【问题讨论】:
-
我真的不明白你的问题。特别是“有效地不经历所有可能的情况”是什么意思。你可以在 25 次相对简单的迭代中解决这个问题。您是否想提出一个公式,给定n,将在恒定时间内解决它?
标签: algorithm matrix dice spiral