使用指南发布日期 阅读时间约 15 分钟

迷宫怎么画|手绘简单迷宫的技巧、难迷宫和圆形迷宫的做法、各年龄段的大小参考

孩子说“给我画个迷宫”,你在方格纸上画起线来,结果不是满是死路、一眼就看出答案,就是根本走不到终点。与其想到哪里画到哪里,不如按固定的方法来做:先画出答案路线,或者从画满格子的状态一面一面拆掉墙。这样谁都能做出一定走得通的迷宫。本文介绍手绘简单迷宫的方法、用方格纸画整齐迷宫的方法、决定难度的5个因素(附用迷宫生成程序逐格统计的实测数据)、3岁到成人的大小参考、圆形迷宫和心形迷宫的做法、深度优先(挖洞法)·推倒柱子法·Prim 算法等算法的区别、右手法失效的条件,以及打印分发时的技巧。

结论:迷宫要么“先画答案路线”,要么“拆掉格子之间的墙”

自己画迷宫最常见的失败原因,是想到哪里就画到哪里地画墙。先画墙的话,很容易在不知不觉中堵住通往终点的路,或者从起点开始就是一条直路,答案一目了然。能确保做出走得通的迷宫的方法,大致有以下两种。

做法步骤概要适合场景效果
先画答案路线先从起点到终点画一条路,再从这条路上分出假的岔路,最后用墙围起来白纸手绘、给幼儿的迷宫、把迷宫画进图画里形状自由,但迷宫一大,岔路容易分布不均
拆掉格子之间的墙从所有格子都用墙隔开的状态开始,一面一面拆掉相邻格子之间的墙,把路连起来方格纸、给小学生到成人的迷宫、整齐的方形迷宫每个格子都能到达,答案只有一条(完美迷宫)

电脑自动生成迷宫,几乎都是第二种“拆墙”的思路。即使在纸上画,理解了这个思路,也就能明白“为什么这个迷宫简单”“怎样才能变难”。

手绘简单迷宫:按答案路线→岔路→墙的顺序画

在白纸上手绘时,从答案路线开始画最不容易出错。给幼儿的简单迷宫、想把迷宫画进图画里时,也用这个方法。先用铅笔打草稿,最后再用笔描墙。

  1. 1

    画外框,定好起点和终点

    在纸上画方形或圆形的外框,留出起点和终点的出入口。起点和终点尽量放在相距远的位置,比如上下两端或对角。

  2. 2

    用铅笔轻轻画出答案路线

    从起点到终点,用铅笔轻轻画一条弯弯曲曲的路。不要直奔终点,要绕到纸的边缘。这条路的长度,直接决定了迷宫的难度。

  3. 3

    从答案路线上分出岔路

    在答案路线上的几处,分出通向死路的假岔路。从假岔路上再分出岔路,走错时退回的距离会变长,迷宫就更难。

  4. 4

    用路填满空白处

    纸上如果留下一大片空白,解的人一看就知道那里不用去。要补画路,让每块空白都有某条岔路伸进去。

  5. 5

    在路的两侧画墙

    最后沿着画好的路两侧用笔画墙,再擦掉铅笔线。路宽统一的话,看起来会更像迷宫。

这个方法的要点是:假岔路也要放在“答案路线附近”和“起点旁边”。如果起点之后一个岔路都没有,孩子只要一直往前走就行,体会不到迷路的乐趣。反过来,在终点前放一条长长的死路,迷宫会让人直到最后都不敢松懈。

用方格纸画整齐的迷宫:一面一面拆墙把路连起来

想做又大又正式的迷宫,就用方格纸和“拆墙”的方法。这其实就是在纸上做电脑迷宫生成里的“挖洞法(深度优先搜索)”,虽然费时间,但死路和岔路分布均匀,做出来的迷宫很耐玩。

  1. 1

    准备迷宫大小的格子

    用1cm方格纸,A4 大约能放横18×纵25格。第一次做建议从8×8〜10×10格开始,约30分钟就能完成。先把它想成所有格子之间都有墙的状态。

  2. 2

    从任意一格开始挖

    选一个格子做记号。从这里选一个还没做记号的相邻格子,擦掉中间的墙(变成通道)走过去,并给这个格子也做记号。

  3. 3

    一直挖到走不动为止

    重复以上步骤。当上下左右的相邻格子都已经有记号、无法前进时,这里就是死路。

  4. 4

    往回退,从还能挖的格子分出新路

    沿来路一格一格往回退,退到有未做记号的相邻格子的地方,就从那里开始挖新的岔路。

  5. 5

    所有格子都有记号就完成了

    一直退回到最初的格子时,所有格子就都连起来了。在外框的上边和下边各开一个入口和出口,只用笔描出墙,就完成了。

选择方向时可以掷骰子(比如1·2=上、3·4=右……),这样不容易带上自己的习惯。人自己选的话,往往“直走”“向右”偏多,做出来的路都很相似。

按这个步骤做出来的一定是完美迷宫。因为只往没有记号的格子前进,所以不会形成环,最后所有格子都会连起来。在纸上做很花时间,想做很多张或大迷宫时,可以用迷宫生成器生成后打印,手工制作就当作“亲子一起做的游戏”来享受。

决定迷宫难度的5个因素:用实测数字比较

想让迷宫变难,大多数人首先想到的是增加格数。但即使格数相同,做法不同,难度也会差很多。决定迷宫难度的主要是以下5点。

  • ①格数:要找的地方单纯变多
  • ②道路弯曲度(单行道的长度):长单行道越多,走错路后越晚才发觉
  • ③答案路线的长度:到终点的路越长,途中迷路的次数越多
  • ④有无绕行环路:答案变成2条以上,出现扶墙走也走不通的地方
  • ⑤终点的位置:终点不在外框而在内部时,很难从外面判断方向

为了确认②的影响,我们用迷宫生成器的生成逻辑,以不同的道路弯曲度各生成200个16×16格(256格)的方形迷宫,取平均值。弯曲度是“从最新挖开的格子继续往下挖(挖洞法)”的比例,0% 时每次从已挖格子中随机选一个往下挖,与 Prim 算法相同。

道路弯曲度死路岔路答案路线(左上→右下)答案路线的拐角答案路线(到最远的格子)
0%(Prim 算法)71处63处34格(占全部的13%)14次40格
25%69处61处38格(15%)18次—
50%58处52处44格(17%)24次57格
75%45处41处55格(21%)32次—
100%(挖洞法)27处26处83格(32%)49次126格(49%)

弯曲度0%的迷宫有71处死路,乍一看非常复杂。但大多数死路只有1〜2格长,一眼就能看出“这里走不通”,实际解起来出乎意料地简单。答案路线也只有34格,几乎是从起点直奔终点。

反过来,100%(挖洞法)时死路减少到27处,但答案路线延长到83格,是前者的2.4倍,拐角也有49个。每条死路都很长,一旦走错,很久都发现不了。如果把终点设为“最远的格子”,答案路线是126格,约占整个迷宫的一半。人解起来觉得难的,是这一种。

加入绕行环路后答案会有2条以上,右手法则也会失效

最有名的迷宫解法,是右手(或左手)一直扶着墙往前走的“右手法则(左手法则)”。在完美迷宫中,只要起点和终点都在外框上,用右手法则一定能走到终点。因为迷宫的墙全部和外框连成一体,沿着墙走,最后一定会从外框上的终点出去。

但如果有绕行环路、而且终点在迷宫内部,终点周围的墙可能形成与外框不相连的“孤岛”,用右手法则就可能只在这个孤岛外侧一直绕圈。下面是用16×16格·弯曲度65%的迷宫各生成300个,从起点用右手法则走的结果。

绕行环路的量终点在右下出口终点在最远的格子最短路线(最远的格子)
无(完美迷宫)100%能到达100%能到达64步
少量(把12%的死路连成环)100%能到达92%(8%会一直绕圈)57步
较多(把30%的死路连成环)100%能到达82%(18%会一直绕圈)48步

另外,即使用右手法则能到达,走的距离也比最短路线长得多。在没有绕行环路、终点在右下出口的迷宫中,最短只需49步的路,用右手法则大约要走257步,因为每条死路都要进去再出来。

增加绕行环路后,答案路线反而变短(上表中64步→48步),死路也变少。即便如此还是让人觉得难,是因为很难察觉“从另一条路回到了刚才走过的地方”,结果在同一处来回打转。成人用的迷宫很推荐加环路,但给幼儿的迷宫更适合不带环路的完美迷宫。

各年龄段的迷宫大小参考:3岁从5×5格开始

迷宫的大小,与其按年龄定,不如按“能不能用铅笔在线中间走”“能不能用眼睛追着前面的路”来定更实际。下表整理了迷宫生成器的难度预设、用该设定生成的200个方形迷宫的平均值,以及 A4 每页印1题时每格的大致尺寸。

参考格数答案路线死路A4 每页印1题时的每格大小
3〜4岁(简单)5×5(25格)约10格约6处约2.5cm
大班〜小学一年级(普通)9×9(81格)约23格约18处约1.8cm
小学生(难)16×16(256格)约50格约50处约1.1cm
成人(成人用)30×30(900格)约107格约144处约6mm
超难50×50(2500格)约191格约329处约3.7mm
  • 3〜4岁:路宽在2cm以上,用蜡笔或粗铅笔也不容易出线。先用手指描,再用铅笔画,孩子会玩得更开心
  • 大班〜小学一年级:拐角超过10个,也渐渐能用眼睛追着前面的路走了。附上答案页,让孩子自己对答案也不错
  • 小学中年级以上:16×16格左右,能一边避开死路一边判断往哪里退。把终点设为“最远的格子”会更有挑战性
  • 成人:30×30格以上。A4 每页放2题时每格只有3mm左右,大迷宫建议每页印1题

孩子中途放弃时,先别急着减少格数,可以试着降低“道路弯曲度”。答案路线会变短,更容易看清通往终点的路。如果目的是练习运笔,也可以减少格数、加粗线条,做成接近一条路的迷宫。

圆形迷宫的做法:越外圈的格子分得越细

圆形迷宫是先画几个同心圆,再用放射状的线把圈与圈之间分成“扇形的格子”。一般是从外侧入口进入,朝中心的终点前进。思路和方形迷宫一样,把相邻格子之间的墙(圆弧或放射线)一面一面拆掉,把路连起来。

手绘时最头疼的,是越往外圈格子越被拉长。如果每一圈都分成同样的数量(比如8格),靠近中心的格子很小,外圈的格子却长好几倍,路的宽窄就会参差不齐。所以,越往外,每一圈分的格数要成倍增加。

圈(从内往外)一圈的格数思路
中心1作为终点的圆形格子
第1圈6把中心周围分成6份
第2圈12内侧1格对应2格
第3〜5圈24当1格的宽度超过圈宽的约2倍时,就加倍细分
第6〜11圈48同上
第12〜22圈96同上

迷宫生成器的圆形迷宫,也是按“1格的宽度超过圈宽约2倍就加倍细分”的规则来做的。4圈时共43格,6圈91格,10圈283格。手绘时,用圆规等间距画4〜6个圆,再用量角器把最内圈每60°分成6格,下一圈每30°分成12格,再外一圈每15°分成24格,格子的大小就基本一致了。

心形·星形·菱形迷宫的做法

心形或星形的迷宫,是把形状的轮廓叠在方格上,只使用轮廓内的格子来做。把形状外的格子当作“本来就不存在”,只在内部的格子之间拆墙,就能做出贴合形状的迷宫。

  1. 1

    在方格纸上画出形状的轮廓

    把心形或星形尽量画大。画在16×16格以上的范围内,细的部分也不容易被挤没。

  2. 2

    选出一半以上在形状内的格子

    只使用格子中心在轮廓内侧的格子。把轮廓沿格线改画成锯齿状,之后画墙时就不会犹豫。

  3. 3

    去掉孤立的格子

    在星形的尖端或心形的凹陷附近,可能会出现与其他格子不相连的1〜2个格子。把它们从迷宫中去掉。

  4. 4

    在剩下的格子里拆墙连路

    接下来和方形迷宫一样。起点放在最上面的格子,终点放在最下面的格子,就能做出从形状一端到另一端的迷宫。

画在同样16×16格的范围内时,可用的格子心形约174格、菱形约144格、星形约110格。星形的路会伸进5个尖尖的角里,所以相对于格数,死路会让人感觉更长。要放进情人节卡片或生日装饰里的话,做一个16×16格左右的心形、把线条加粗,会很可爱。

迷宫自动生成算法的区别:挖洞法(深度优先)·推倒柱子法·Prim 算法

迷宫自动生成也是很受欢迎的编程题材,有几种经典的方法。它们都能做出“走得通的迷宫”,但做出来的迷宫性格差别很大。

方法做法生成的迷宫的特点
挖洞法(深度优先搜索·递归回溯)从当前格子向未访问的相邻格子挖进,走不动就退回再分岔长单行道蜿蜒曲折。死路少,但每条都很长。人解起来难
推倒柱子法在每隔一格的格点立柱子,把柱子随机向某个方向推倒变成墙(除最上一行外不向上推倒)做法非常简单。但容易有偏向,迷宫往往规则、好解
延伸墙壁法从外框或中途的点随机延伸墙壁,碰到已有的墙就停短岔路多。要注意别让墙围成环
Prim 算法从已挖格子集合的“边缘”随机选1格扩展会产生大量短死路。看起来复杂,解起来简单
Kruskal 算法按随机顺序查看墙,如果两侧还没连通就拆掉接近 Prim 算法。短死路均匀分布在整体中
Growing Tree 算法从已挖格子的列表中选下一格。选最新的就是挖洞法,随机选就是 Prim 算法按选择比例,可以自由做出介于挖洞法与 Prim 算法之间的迷宫

迷宫生成器使用 Growing Tree 算法,用“道路弯曲度”改变“选最新格子的比例”。100% 时与挖洞法相同,0% 时与 Prim 算法相同。两者都是生成完美迷宫的方法,所以刚生成时答案只有1条。只有指定了绕行环路时,才会把部分死路和相邻格子连起来形成环。答案路线是从起点用广度优先搜索求出的最短路线。

如果自己写程序,建议先从挖洞法开始。只需要一个格子数组和一个“记住来路的栈”,用递归写大约20行就能搞定。用递归生成大迷宫时,函数调用可能会太深,这时改成用数组来保存栈的写法即可。

怎样确认做好的迷宫走得通

手绘的迷宫,即使以为完成了,也可能有通往终点的路被堵住的情况。交给别人之前,用下面任一方法确认一下吧。

  • 涂掉死路:从死路的末端开始,用铅笔把路涂黑,直到碰到岔路口。反复这样做,最后剩下的路就是答案。如果什么都没剩,说明某处被堵住了
  • 用右手法则走一遍:没有绕行环路、起点和终点都在外框上的迷宫,右手扶墙走一定能到终点。到不了就说明路断了
  • 请别人来解:做迷宫的人自己知道答案,很难发现疏漏

涂掉死路的方法(死路填充法)作为找答案的方法也很方便。能看到整个迷宫的纸上迷宫,用这个方法比从起点走要快得多地浮现出答案。孩子解不出来时,教他“先把死路擦掉吧”也是很有效的提示。

打印分发迷宫时的技巧

在家庭学习的练习纸、兴趣小组、课后托管、店铺儿童区等场合分发迷宫时,注意以下几点会更好用。

  1. 1

    用100%(实际大小)打印

    选“适合纸张大小”缩小打印的话,外框的线可能缺失,细墙也可能变淡。迷宫生成器的打印页面按 A4 纵向·边距10mm制作,请用100%打印。

  2. 2

    大迷宫每页印1题

    30×30格以上的迷宫每页放2题的话,每格只有3mm左右,铅笔线会把路填满。

  3. 3

    给幼儿用的线要粗

    线条加粗后,路和墙区分清楚,出线时也容易察觉。用复印机复印时,粗线也比细线更不容易变淡。

  4. 4

    附上答案页和姓名栏

    分发很多张时,有和题目顺序一致的答案页,批改会轻松很多。有姓名栏的话,收回时也知道是谁的。

  5. 5

    做好能重新分发同一个迷宫的准备

    在迷宫生成器中,编号和设定相同,随时都能生成同一个迷宫。记下网址或编号,就能给弄丢的孩子同样的迷宫。

在手机或平板上玩的话,可以用迷宫生成器的“在屏幕上玩”,用手指沿通道描着走到终点。到达终点后会显示秒数、步数和最短步数,和兄弟姐妹或朋友比赛时间也很有趣。

做迷宫时常见的失败和改法

常见失败原因改法
走不到终点先画墙,结果某处把路堵住了先画答案路线,或用拆墙的方法重做
答案一眼就看出来起点附近没有岔路/答案路线几乎是直的让答案路线绕到纸的边缘,在起点之后马上放一个岔路
死路很多却很简单全是1〜2格的短死路把死路加长,再从死路上分出岔路(提高弯曲度)
没用到的空白很显眼岔路没有铺满整张纸把岔路伸进空白处,让每个地方都有路
在同一处来回打转无意中做出了成环的路给幼儿用的话,在环上加一面墙堵住。给成人用的话可以保留
打印出来线条缺失缩小到适合纸张大小打印了用100%打印。大迷宫每页印1题

做迷宫对出题的人来说也是很好的头脑体操。思考答案路线、考虑在哪里设陷阱,也是在练习想象解题人的心情。亲子各做一张互相交换,或者照着迷宫生成器做出的迷宫手绘一遍,也来体会一下做迷宫的乐趣吧。

常见问题

怎样才能简单地画出迷宫?
最简单的方法是先用铅笔轻轻画出从起点到终点的答案路线,再从上面分出几条通向死路的岔路,最后在路的两侧画墙。如果从墙开始画,很容易把路堵住,做成走不通的迷宫。
用方格纸画迷宫的步骤是什么?
从所有格子之间都有墙的状态开始,从任意一格出发,一边擦掉墙一边走向“还没走过的相邻格子”。走不动时沿来路退回,从还能挖的格子分出新路。所有格子都连起来后,在外框开出入口和出口就完成了。
做难迷宫的诀窍是什么?
除了增加格数,还有3点很有效:多做长单行道(加长死路)、把终点放在迷宫内部、加入少量绕行环路。以16×16格比较,长单行道迷宫的答案路线平均83格,是短岔路多的迷宫(34格)的2.4倍。
3岁·4岁的孩子适合多大的迷宫?
参考是5×5格左右、路宽2cm以上。答案路线约10格、死路5〜6处,就足够玩得开心。A4 每页只印1题、印大一些,再把线加粗,用蜡笔也不容易出线。
圆形迷宫怎么画?
用圆规等间距画同心圆,再用放射状的线把圈与圈之间分成格子。越外圈分的格子越多(中心周围6格,下一圈12格,再外一圈24格……),让格子大小一致。然后一面一面擦掉相邻格子之间的墙,把外侧入口连到中心。
有右手法则(左手法则)解不了的迷宫吗?
有。有绕行环路、终点又在迷宫内部的迷宫,扶着墙走可能会一直在同一处绕圈。在16×16格的试算中,加入较多环路并把终点放在内部时,约18%的迷宫用右手法则到不了终点。
挖洞法和 Prim 算法有什么区别?
挖洞法从当前格子尽量往远处挖,所以会做出长单行道蜿蜒曲折的迷宫。Prim 算法从已挖区域的边缘随机扩展,所以会做出有大量短死路的迷宫。人解起来,一般觉得挖洞法的迷宫更难。
怎样确认自己做的迷宫走得通?
最可靠的是从死路的末端到岔路口,用铅笔把路涂黑。反复这样做,最后剩下的路就是答案;如果什么都没剩,说明某处的路断了。
能免费制作并打印迷宫练习纸吗?
用迷宫生成器,可以免费制作方形·圆形·心形·星形·菱形的迷宫,并附答案页和姓名栏,在 A4 上一次最多打印20题。还能保存为 PNG·SVG,或在手机上用手指描着玩。

本文介绍的工具

相关文章

使用指南约 15 分钟

呼吸法怎么做|4-7-8呼吸法、箱式呼吸、共振呼吸的区别与选择

睡不着的夜晚、考试或面试之前、怎么也压不下去的烦躁。别人总说“深呼吸一下”,可到底该吸几秒、呼几秒,又该选哪种呼吸法,其实很少有人说得清。本文以每分钟呼吸次数和“呼气÷吸气”的比例为标准,比较并讲解5种常见呼吸法(4-7-8呼吸法、箱式呼吸、共振呼吸、生理性叹息、腹式呼吸)的秒数与做法。同时整理了呼吸为什么能让人平静下来的原理、睡前、紧张、烦躁等不同场景该怎么选、感到难受时如何调整、安静时呼吸频率的测量方法,以及不适合做呼吸练习的场合。

阅读文章 →
原理解说约 16 分钟

全银格式是什么?日本综合转账·工资转账数据的制作方法与 120 字节布局

在日本,公司通过网上银行一次性发起几十笔转账时,银行常会要求“请导入全银格式的文件”。全银格式是日本全国银行协会(全银协)规定的转账数据写法:每行固定 120 字节的定长文本,由表头·数据·尾部·结束四种记录组成。本文按实际工作中容易卡住的顺序,介绍综合转账·工资转账·奖金转账的区别,各记录的项目和位数(第几字节写什么),把收款人名改成半角片假名的规则和「カ)」「(カ」法人略称,邮储银行记号番号的换算,用 Excel·CSV 制作的步骤,以及导入出错的原因和修改方法。

阅读文章 →
原理解说约 15 分钟

抽卡概率的计算方法|多少抽能出?保底·歪卡·满命的期望值

以为“出货率 1%,100 抽总该出了”,结果就是没出。这并不是特别倒霉:1% 抽 100 次至少出 1 个的概率本来就只有约 63%。本文用实际算出的数字,整理了“抽 n 次能出的概率”的公式、出货率×抽数速查表、一半的人和 10 人中 9 人出货所需的抽数、有保底和歪卡(大保底)时的平均与最坏抽数、保底计数的继承、满命(7 个)所需的抽数,以及随机吧唧·卡牌集齐全套要买几个。

阅读文章 →