每周算法讲堂 快速幂
现在游戏开始!
“切,又是无聊的一周。”沈柯倚靠在墙边,不屑的说道。
“以生存为赌注,拼上性命寻找出路什么的,我才不会怕呢。”廖奇握紧拳头,自信地说道。
......
“啊,为什么,为什么,游戏为什么又开始了?!怎么会这么快?!”,小郭蹲在角落里面,捂住头,瑟瑟发抖的样子。
......
我当然还是和往常一样,安静的站在一边,没有吱声。这个游戏并不会怜悯弱者,也不会对勇者有任何的奖励,只要安静的活下去就好。
喇叭突然又传出了那无感情,冰冷的声音。
“参赛人数:11人”
“奖品:无”
“持续时间:一周”
“【游戏】难易度:……”
“♦3”
♦说明这个游戏是智力类型,3说明是难度为3。
“难度才为3,还好不算太难。而且是智力类型,恰好是我擅长的方向呢。”潘星霖稍微舒了一口气,“希望今天能够成功过关,这下我就能再活一周了。”
“是啊,我们俩可要加油啊。”张冠斓朝着潘星霖点了点头。
“难道不应该是我们吗?”杨宇同对张冠澜说道。
突然我的耳边传来微微的声音,“最后说明,游戏规则:每个人抽取一个神签,并解决上面的问题,答对者活下来,而答错者,死。”
神签是什么?
而且为什么这次声音不通过喇叭播放?
难道每个人的任务不一样?那这个游戏可真够阴人的啊……
正当我想来想去的时候,突然在大家的眼前多了一个箱子,那箱子里面摆满了签子,似乎那就是……
“神签!”廖奇开心道,“哈!只要答对了他,我就能回去了!”
廖奇还没等大家反映过来,就冲了上去抽了一签。
只见拿签上写着“大吉。问题:请在三秒内说出二的十次方是多少。”
“1024。”廖奇大声叫了出来。
毫无疑问,系统给出了正确的回应,廖奇带着笑容,离开了这个游戏。
虽然说只留下了三秒的时间,但是计算二的十次方就算2*2*2....*2,也是来得及的。果然是大吉之人,这种题目不得不说是送分题,真是羡慕廖奇大哥,真不知我能抽到什么签。
“剩余人数:10人”
“游戏继续。”
第二签,潘星霖走了上去。
“凶。问题,请你在三十秒内说出二的一百次方的后四位数字是多少。”
这。。
这,这是什么鬼问题!三十秒内怎么可能计算出二的一百次方出来?这系统分明是在要潘星霖死啊!
“5376”,潘星霖举起了手,带着她往常熟悉的微笑。
“回答正确。”系统冰冷的声音,不带一丝感情。
这。。
这是怎么做到的?怎么计算出来的?
潘星霖似乎察觉到了我的心声,走过来,她拍了拍我的肩。
她转身对着大家说:“大家不要怕,既然是题,那么我们就肯定可以解决的。如果说出题人出了道大家都不会做的题,那有什么意义呢?”
“回到这道问题,二的一百次方。”潘星霖举起了他的神签。
“人脑大概一秒能够比较轻松的运算三到四次左右,所以三秒计算二的十次方,这是一个比较简单的事情。
但是三十秒解决二的一百次方的话,如果按照常理的话,肯定是不可以的,就算再聪明,也不可能一秒计算10次。
但是。。”
潘星霖带上了她熟悉的微笑。
“我们可以简化嘛,很显然a^(2*n) = (a2)n,a(2*n+1)=(a2)^n*a对不对?”
我想了想,的确是这样的,这两个东西都很显然,但是这和这道题有什么关系呢?
“没错,只要有了这个,我就能使得计算量减少。”还是那微笑,不过弧度仿佛越来越大了。
“比如一开始的2^10:
因为a^(2*n) = (a2)n,所以210=(22)^5。
2^2 = 4,所以2^10 = 4^5。
又因为a(2*n+1)=(a2)n*a,所以45=(42)2*4。
再算45=(4*4)2*4,再算16^2=256,在带回去*4=1024。
然后,这道题就结束了。”
好像真的变容易了?
按照这样去想的话:2^100 = (22)50 = 4^50 = (42)25 = 16^25 = (162)12*16 = 256^12*16 = (2562)6*16 = 5 536^6 * 16 = (55362)3*16 = 7 296^3*16 = 336*16 = 5 376。
好像果然如此,连我这么笨的人,居然也能在规定时间内轻松的计算出来。
潘也回去了,带着那熟悉的微笑,留下了一句话“记住哦,那叫快速幂,我希望能够帮助到你们。”
“剩余人数:9人”
“游戏继续。”
第三签,到我了。
……
为什么到我就是大凶?!
题目:请在三分钟内解决下面的题目:
众所周知772002很喜欢马尾,所以他决定画几幅马尾送给他的女朋友…………(详见CDOJ1280)
这又是什么鬼题目!772002喜欢画马尾关我什么事儿啊!
难道我要死了吗?
我之后究竟怎么了?请听下回分解。