魔方吧·中文魔方俱乐部

标题: 数字问题一题 [打印本页]

作者: qiaoyisi    时间: 2014-2-12 09:18:23     标题: 数字问题一题

12321.jpg

附件: 12321.jpg (2014-2-12 09:18:09, 17.46 KB) / 下载次数 41
http://bbs.mf8-china.com/forum.php?mod=attachment&aid=MjMzNjU4fDE4OThhY2FmfDE3MzMxNDgxMjZ8MHww
作者: 小糊涂虫    时间: 2014-2-12 09:48:58

                                                
作者: jimofc    时间: 2014-2-12 10:29:46

本帖最后由 jimofc 于 2014-2-12 10:32 编辑

81

17631722963339008632999476075789873518584293933945847985483449999435846783154751426302416612971128144524382108872866589551096554579626088959140851991426569313315549757346620259122143653644688022227396511388286089798171467834287092999553642287778276882818635718394203728473889486213936374551017111423545330393852181875601640976594246568382375435408421131649024
1595169
1296
324
81
作者: 滴水石屋    时间: 2014-2-12 10:54:14

不会,好难啊。。。
作者: 支点    时间: 2014-2-12 11:00:48

jimofc 发表于 2014-2-12 10:29
81

1763172296333900863299947607578987351858429393394584798548344999943584678315475142630241661297 ...

原来是这样。。
2^1210怎么算的?
作者: 碎玉_玲珑    时间: 2014-2-12 11:27:40

好难唉         
作者: 奇遇    时间: 2014-2-12 12:28:58

支点 发表于 2014-2-12 11:00
原来是这样。。
2^1210怎么算的?

http://www.wolframalpha.com/input/?i=2%5E1210
作者: 支点    时间: 2014-2-12 13:15:18

奇遇 发表于 2014-2-12 12:28
http://www.wolframalpha.com/input/?i=2%5E1210

好强大的计算器!
作者: tm__xk    时间: 2014-2-12 15:47:02

对足够大的数,这个计算过程是减得很厉害的.对此题数字,减到最小是绰绰有余.只须考虑mod9的余数即可.显然2^1210=7(mod9),A[i]周期为2,故最终答案为169.
当然,这是简单的写法,真正要写严谨,肯定得多码点字.所以我推荐下面的方法:
没啥好说的,直接推到周期出现就是了..
2^1210约等于10^363(事实上2^1210是365位数),各位数之和不超过9*365=3285(其实也就1708),平方也不超过8位数.此和mod9余7,此平方mod9余4.
再算一次,和不超过8*9=72,平方也就顶多四位.此和mod9余4,此平方mod9余7.
再来一次,和不超过4*9=36,此和mod9余7,只能是7,16,25,34,平方只能是49,256,625,1156.
再来一次,和都是13,平方169.
再来一次,和16,平方256.
顺利进入循环..此时也就算了5次,题目允许一千多次..绰绰有余....显然答案还是169....

ps.3L说答案是81?作为一个9的倍数,这错得也太明显了吧..
3L的黑的大体还是对的,除了掉了几个0;但是下一行的1595169=1263^2是怎么来的..明显是错的吖..
作者: jimofc    时间: 2014-2-12 16:17:04

本帖最后由 jimofc 于 2014-2-12 16:47 编辑
tm__xk 发表于 2014-2-12 15:47
对足够大的数,这个计算过程是减得很厉害的.对此题数字,减到最小是绰绰有余.只须考虑mod9的余数即可.显然2^1 ...

首先对比2^1210的结果,7L的网站和我的计算器结果是一样的,证明我的长整数计算器没问题
然后根据多组数据运算结果证明我的数字和平方计算工具也没问题
DEBUG数据也没问题

所以我有把握说这个结果正确
QQ截图20140212163517.png QQ截图20140212163428.png

附件: QQ截图20140212163517.png (2014-2-12 16:46:58, 51.71 KB) / 下载次数 38
http://bbs.mf8-china.com/forum.php?mod=attachment&aid=MjMzNjg2fDIyNjU0ZWM1fDE3MzMxNDgxMjZ8MHww

附件: QQ截图20140212163428.png (2014-2-12 16:46:44, 59.2 KB) / 下载次数 39
http://bbs.mf8-china.com/forum.php?mod=attachment&aid=MjMzNjg1fDc4ZTk0NzRifDE3MzMxNDgxMjZ8MHww
作者: 支点    时间: 2014-2-12 20:53:54

tm__xk 发表于 2014-2-12 15:47
对足够大的数,这个计算过程是减得很厉害的.对此题数字,减到最小是绰绰有余.只须考虑mod9的余数即可.显然2^1 ...

问一下mod9是怎么算的?
作者: 李根    时间: 2014-2-12 21:08:46

jimofc 发表于 2014-2-12 16:17
首先对比2^1210的结果,7L的网站和我的计算器结果是一样的,证明我的长整数计算器没问题
然后根据多组数 ...

好强大的计算器!+1!
作者: ursace    时间: 2014-2-12 22:58:35

什么叫数字和的平方?
作者: tm__xk    时间: 2014-2-13 01:01:41

jimofc 发表于 2014-2-12 16:17
首先对比2^1210的结果,7L的网站和我的计算器结果是一样的,证明我的长整数计算器没问题
然后根据多组数 ...

先针对你的计算器.
那个网站我绝对信任.不过我没用那个在线的算.我算到的结果大体看上去跟你给的图,包括你的计算器和那个在线网站的图都是一致的.
我的结果是365位.你可以看看网站得到的是不是365位.
但是我复制你的黑体的结果发现只有359位.你也可以自己验证一下.
你的意思是你的计算器是你自己写的吗?在线网站是mathematica,我用的是maple,我选择怀疑你的,不算过分吧?
我看到你的结果少了好几位,但是一眼看不出数字有什么差异,说明你的计算器大体上是对的.我粗略从头看到尾只看到少了几个0,数字和也一样是1708.如果是你自己写的高精,不妨考虑下哪些地方可能出这样的bug.(当然,如果你坚持要用这个计算器,我也没办法.)
我认为不管是正确结果,还是你掉了6个0的结果,数字和都是1708.但是你接下来结果是1595169.这是1263^2不会错吧?1708变成1263就差了比较远了,强烈建议你检查是否哪里可能漏算了一些数..
至于你说的数据debug看不出错误..我不知道你是怎么验证的,不过从上边的结果来看错的还是不少..我认为检验下数据长度你是做得到的吧.或者,把那个网站得到的结果和你自己的结果放在一起,长短不一总看得出来吧?

再说说结果..不针对任何程序,但我认为,作为一个会编程的人,总该知道 一个数的各个数位之和 和 这个数 被3除的余数相同吧.2的幂总不会是3的倍数吧?你觉得2的幂的各个数位之和会是3的倍数?仅凭这一点,虽然不能断定我的结果正确,但起码你的结果是绝对错误的.

你看,你认为你的结果正确的理由是"你看不出你的程序有什么问题",而我认为你的结果错误的理由是数学上的推导,而不是因为你的结果跟我的不同.
作者: tm__xk    时间: 2014-2-13 01:02:51

支点 发表于 2014-2-12 20:53
问一下mod9是怎么算的?

就是"除以9的余数"的意思.
作者: tm__xk    时间: 2014-2-13 01:11:43

jimofc 发表于 2014-2-12 16:17
首先对比2^1210的结果,7L的网站和我的计算器结果是一样的,证明我的长整数计算器没问题
然后根据多组数 ...

大致数了下,你的图里的也是365位数,那计算器应该就没这个问题了,那刚才就是我误会了,可能把其它的问题算到了这个计算器头上..
反正我看来看去3L的那串都是只有359个数字,要不你帮我数数吧..那串数字你是怎么弄上来的呢..直接把图里的结果复制过来的?别告诉我先截成几段才没掉了几个0..

至于你的数字和差了那么多..你图里也没有..我也不知道问题..
作者: jimofc    时间: 2014-2-13 09:34:51

tm__xk 发表于 2014-2-13 01:11
大致数了下,你的图里的也是365位数,那计算器应该就没这个问题了,那刚才就是我误会了,可能把其它的问题算到 ...

发现问题了。。。

第一次用的结果好像是用了以前旧版本的程序,后面那个验算才是正确的结果,用的是最后修改过的版本
这个不导致数字和错误
目测计算结果的时候感觉木有超过255位,所以直接进行赋值和计算了,这样少算了101位的数字和

重新计算结果果然是169
2917264
961
256
169
作者: 支点    时间: 2014-2-13 10:35:00

tm__xk 发表于 2014-2-13 01:02
就是"除以9的余数"的意思.

我知道是这个意思~~
就是怎么算出来的呢?
比如2^1210=7(mod9)是为什么?
作者: qiaoyisi    时间: 2014-2-14 00:02:47

A=17631722963339008632900994760757898735185842939339458479854834499994358467831547514263024166129711281445243821088728665895510965545796260889591408519914206560931331554975734662025912214036536446880222273965113882860897981714678342870929995536422877782768828186357180394203728473889486213936374551017111423545330393852181875601640976594246568382375435408421131649024
A1=2917264
A2=961
A3=256
A4=169
A5=256
A6=169

只是前面几个有点变化,后面都是不断循环的。
作者: tm__xk    时间: 2014-2-14 00:15:00

支点 发表于 2014-2-13 10:35
我知道是这个意思~~
就是怎么算出来的呢?
比如2^1210=7(mod9)是为什么?

通俗地讲..1,2,4,8,16,32,...被9除的余数本来就是周期的..
严谨地讲..2^(6k+4)=64^k*2^4=7(mod 9)
作者: 支点    时间: 2014-2-14 09:52:11

tm__xk 发表于 2014-2-14 00:15
通俗地讲..1,2,4,8,16,32,...被9除的余数本来就是周期的..
严谨地讲..2^(6k+4)=64^k*2^4=7(mod 9)

明白了,谢谢!




欢迎光临 魔方吧·中文魔方俱乐部 (http://bbs.mf8-china.com/) Powered by Discuz! X2