|
4#
楼主 |
老陈
发表于 2013-9-12 01:54:56
来自手机
|
只看该作者
本帖最后由 老陈 于 2013-9-11 15:40 编辑
计算溢出的问题解决了,当变量的值大于10^18时,在这个变量里减去10^18,另一个变量加1,用两个变量表示累加结果,不过这样处理会降低效率。
再说计算思路:
为了叙述方便,我们把81个单元格的名字写成Crc形式,其中C是单元格的意思,r代表单元格所在的行,c代表单元格所在的列。
取一张空白表,C11有9种数字可填,C12有8种数字可填,
C13:7
C14:6
...
C19:1
C21:6
C22:5
C23:4
C31:3
C32:2
C33:1
C41:6
C24麻烦
当C14,C15,C16与C21,C22,C23都不同时C24有3种选择,有一个相同时有4种选择,有两个相同时有5种选择,有3个相同时有6种选择。用类似的办法找其它单元格的可填数字数,相乘再累加就得到基本图形集合的元素数:5,472,730,538。
每个图形第1到第3行可以互换,第4到第6,第7到第9也一样,列也一样,行列互换,旋转和翻转也可以。这样可以从基本图形中派生才更多图形。这些图形有重复,把它们去掉,得到结果如下:
6,670,903,752,021,072,936,960
结果有待于验证,我非常自信的是数量级肯定没问题。
|
|