[讨论] 2的2000次方,加减乘除

楼主: rere70697 (勘开点)   2016-11-17 15:04:10
http://i.imgur.com/VYquvcO.
他要求是利用c or c++
做出2的次方 +,-,*,/
最高上限2的2000次方
例* 2的1000次方+2的1001次方
会超过2的2000次方。(这样就不行
加减乘除都是不能超过2000次方
而次方是我们的输入值!
我是用a=pow(b,c)这种做法
接下来就不知道怎么循环了
请各位帮我想想怎么写程式码
作者: MOONRAKER (㊣牛鹤鳗毛人)   2016-11-17 15:06:00
标准答案: 大数运算另外题目模模糊糊 是要所有答案都转成2**k来显示(包括加减)吗 是就好笑了不要说自己想 要大家随便发挥那也应该写在题目上如果没想到 那这就是个烂题目
楼主: rere70697 (勘开点)   2016-11-17 15:18:00
作者: pttworld (批踢踢世界)   2016-11-17 15:24:00
divide and conquer
作者: ACMANIAC (請肥宅救救肥宅)   2016-11-17 16:18:00
到底在工三小,2^1000 + 2^1001 > 2^2000 ???给个 sample input & sample output 吧看懂了,你讲的是 2^1000 * 2^1001 吧.......这个简单,用 bitset 去做,然后用二进制显示就可以了。
作者: Chikei ( )   2016-11-17 17:00:00
这只是把bit运算换成次方骗人的题目...
楼主: rere70697 (勘开点)   2016-11-17 18:33:00
用bitset最高不能到2000次方吧?因为我刚测试会一直乱跑
作者: ilikekotomi (Young)   2016-11-17 18:50:00
加减不晓得怎么做bitset 乘除的话还比较简单如果要正常显示所有数字的话应该一楼讲的就是正解了
作者: Schottky (顺风相送)   2016-11-17 23:25:00
#include <gmp.h> 下略
作者: EdisonX (卡卡兽)   2016-11-18 00:11:00
加减一样用bitset,但大数二进制转十进制跑不掉。
作者: andy79323 (‵皿′)   2016-11-18 19:56:00
还没试过 看一下这篇 https://goo.gl/yjblF3
作者: MasterChang (我爱ASM)   2016-11-19 01:02:00
会python真好
作者: bigpigbigpig (To littlepig with love)   2016-11-19 15:40:00
会 python 真好 +1:print(2**1000)
楼主: rere70697 (勘开点)   2016-11-20 13:55:00
老师教拍胜,却叫我们用c语言做出来...而且做到现在我顶多做乘除,加减太困难了

Links booklink

Contact Us: admin [ a t ] ucptt.com