随笔分类 -  高精度

摘要:题目链接:P1255 解题思路: 倒推,最后上楼梯的方法数等于f(n) = f(n-1) + f(n-2),用递推+高精 AC代码: 1 #include <iostream> 2 #define mx 1212 // 固定位数 3 using namespace std; 4 int a[5010 阅读全文
posted @ 2020-09-08 13:45 不敢说的梦 阅读(342) 评论(0) 推荐(0)
摘要:题目链接:P1249 解题思路: 有两行输出,先找出乘积最大的那些数,然后用高精度计算乘积。 要想乘积最大,要尽可能使因数多,并且因数之间的差尽可能小,可以从2开始累加,当sum大于n时,把多出的部分取掉即可。 AC代码: 1 #include <cstdio> 2 #include <iostre 阅读全文
posted @ 2020-09-08 13:41 不敢说的梦 阅读(430) 评论(0) 推荐(0)
摘要:先上题:POJ 1504 Describe: The Antique Comedians of Malidinesia prefer comedies to tragedies. Unfortunately, most of the ancient plays are tragedies. Ther 阅读全文
posted @ 2020-08-04 10:46 不敢说的梦 阅读(114) 评论(0) 推荐(0)
摘要:高精度数的乘法: 补充:若两个数位数分别为la和lb,则两数相乘后结果的位数至少为la+lb-1,如果最高位有进位,则结果的位数为la+lb。 思路:先计算,再一次性进位。 代码: 1 for(int i = 0; i < la; i++) 2 for(int j = 0; j < lb; j++) 阅读全文
posted @ 2020-08-04 10:26 不敢说的梦 阅读(191) 评论(0) 推荐(0)
摘要:高精度数的存储: 用数组来存储,先将大数用字符串输入,再存入数组。 1 string s; 2 int a[100]; 3 int n = s.size(); 4 for(int i = 0; i < n; i++) 5 a[i] = s[n-i-1]-'0'; 此处注意,数的低位在s下标高的地方, 阅读全文
posted @ 2020-08-04 08:08 不敢说的梦 阅读(278) 评论(0) 推荐(0)