作者tml (流刑人形)
看板puzzle
标题[中译] ProjectEuler 424 Kakuro
时间Sun Apr 21 04:23:52 2013
424. Kakuro
http://projecteuler.net/problem=424
http://projecteuler.net/project/images/p_424_kakuro1.gif
以上的范例为一「蒙面数和」的谜题以及解答。
(关於数和的规则可以在许多网站查到。其他相关资讯亦可在这个网站查得:
http://krazydad.com 这个网站的作者正是本题题目的资料提供者。)
以下的文件:
http://projecteuler.net/project/kakuro200.txt 包含了两百道
蒙面数和的题目,混合了5 ×5和6 ×6两种尺寸。
第一道题目即为上面显示的例题,其编码如下:
6,X,X,(vCC),(vI),X,X,X,(hH),B,O,(vCA),(vJE),X,(hFE,vD),O,O,O,O,(hA),O,I,
(hJC,vB),O,O,(hJC),H,O,O,O,X,X,X,(hJE),O,O,X
第一个字元是用来表示尺寸的数字,6代表5 ×5、7代表6 ×6,後面以半形逗号隔开。
额外的第一列和第一行是用来放提示数字用的。
其余由左而右、由上而下依序为每一格的内容,并用半形逗号相隔。
‧X代表灰格,即该格没有任何提示也不需要填入数字。
‧O(大写英文字母)代表白格,即该格需要填入数字。
‧A到J的大写字母分别代表解谜後的数字0到9的其中一个。
‧()半形括号用来表示该格有蒙面和。水平的蒙面和在蒙面数前面会有一小写h,而铅
直的蒙面和则是小写v。後面则跟着题示的蒙面和,两位的蒙面数会显示两个字母。
当该格需要同时表示水平和铅直的蒙面和,则将两数在半形括号内以半形逗号隔开,
并一律先表示水平的部分。例如在例题中的(hFE,vD)。每个半形刮号後面也都用半形
逗号区隔。
‧最後一个格子後面接的是换行字元(CRLF)而不是半形逗号。
每个谜题的解为该蒙面数和的正确解答中A到J的字母分别代表的数字。上述例题的解即为
8426039571。每个谜题一定会含有至少9个蒙面字母。当只给出9个时,第10个字母的值即
为0到9里面剩下没用到的那个数字。
已经得知前10道题的解的和为64414157580。
请求出全部200道题的解的和。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 129.2.129.163
※ 编辑: tml 来自: 129.2.129.163 (04/21 04:26)
1F:推 jurian0101:太有趣了XD 04/21 23:15