2706:麦森数

总时间限制: 1000ms 内存限制: 65536kB
描述
形如2p-1的素数称为麦森数,这时P一定也是个素数。但反过来不一定,即如果P是个素数。2p-1不一定也是素数。到1998年底,人们已找到了37个麦森数。最大的一个是P=3021377,它有909526位。麦森数有许多重要应用,它与完全数密切相关。
任务:从文件中输入P (1000<P<3100000) ,计算2p-1的位数和最后500位数字(用十进制高精度数表示)
输入
文件中只包含一个整数P(1000<P<3100000)
输出
第1行:十进制高精度数2p-1的位数。
第2-11行:十进制高精度数2p-1的最后500位数字。(每行输出50位,共输出10行,不足500位时高位补0)
不必验证2p-1与P是否为素数。
样例输入
1279
样例输出
386
00000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000
00000000000000104079321946643990819252403273640855
38615262247266704805319112350403608059673360298012
23944173232418484242161395428100779138356624832346
49081399066056773207629241295093892203457731833496
61583550472959420547689811211693677147548478866962
50138443826029173234888531116082853841658502825560
46662248318909188018470682222031405210266984354887
32958028878050869736186900714720710555703168729087
来源
联赛复赛试题2003

问题链接:Bailian2706 麦森数
问题简述:(略)
问题分析:大数问题,用百万进制解决。
程序说明:(略)
参考链接:(略)
题记:(略)

AC的C语言程序如下:

/* Bailian2706 麦森数 */#include <stdio.h>
#include <string.h>
#include <math.h>#define N 100
#define MOD 100000
int ans[N];     // 百万进制void print()
{for (int i = 1; i <= N; i++) {printf("%05d", ans[i - 1]);if ( i % 10 == 0) printf("\n");}
}void mult(int t)
{int carry = 0;for (int i = N - 1; i >= 0; i--) {int tmp = (ans[i] << t) + carry;carry = tmp / MOD;ans[i] = tmp - carry * MOD;}
}int main()
{int p, t;while (~scanf("%d", &p)) {memset(ans, 0, sizeof(ans));printf("%d\n", (int)(p * log10(2) + 1));ans[N - 1] = 1;t = p / 14;while (t--) mult(14);mult(p % 14);ans[N - 1]--;print();}return 0;
}

Bailian2706 麦森数【大数】相关推荐

  1. [蓝桥杯][算法训练VIP]麦森数(Java大数+快速幂)

    题目描述 形如2p-1的素数称为麦森数,这时P一定也是个素数.但反过来不一定,即如果P是个素数,2p-1不一定也是素数.到1998年底,人们已找到了37个麦森数.最大的一个是P=3021377,它有9 ...

  2. 【9704】【9109】麦森数

    Time Limit: 3 second Memory Limit: 2 MB [问题描述] 形如2p-1的素数称为麦森数,这时P一定也是个素数.但反过来不一定,即如果P是个素数,2p-1不一定也是素 ...

  3. [CODEVS 1087] 麦森数

    描述 计算2P-1的位数和最后500位数字 分析 有一个公式,2^p的位数是p*lg2以十为底 2 的对数. 证明 : 2p=10lg2p=10p∗lg2 2^p = 10^{lg2^p} = 10^ ...

  4. 高精度:麦森数*(洛谷P1045)

    P1045 [NOIP2003 普及组] 麦森数 解析 看似只是正常的一个高精 然而 暗藏杀机 一开始随手那么一写 ... (即使用了快速幂)时间复杂度过于感人 后来我们发现: 第一问位数的计算不必真 ...

  5. 蓝桥杯vip答案java_Java实现 蓝桥杯VIP 算法训练 麦森数

    算法训练 麦森数 时间限制:1.0s 内存限制:256.0MB 问题描述 形如2P-1的素数称为麦森数,这时P一定也是个素数.但反过来不一定,即如果P是个素数,2P-1不一定也是素数.到1998年底, ...

  6. 信息学奥赛一本通 1925:【03NOIP普及组】麦森数 | OpenJudge NOI 4.4 1708:麦森数 | 洛谷 P1045 [NOIP2003 普及组] 麦森数

    [题目链接] ybt 1925:[03NOIP普及组]麦森数 OpenJudge NOI 4.4 1708:麦森数 洛谷 P1045 [NOIP2003 普及组] 麦森数 [题目考点] 1. 高精度 ...

  7. 麦森数(洛谷-P1045)

    题目描述 形如 2^{P}-1 的素数称为麦森数,这时 P 一定也是个素数.但反过来不一定,即如果 P 是个素数, 2^{P}-1 不一定也是素数.到1998年底,人们已找到了37个麦森数.最大的一个 ...

  8. 【codevs1087NOIP2003】麦森数,高精度+对数+快速幂

    麦森数 2003年NOIP全国联赛普及组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题解 题目描述 Description 形如2P-1的素数称为麦森数,这时P ...

  9. Java 算法 麦森数

    目录标题 题目描述 解题思路 代码 题目描述 形如2P-1的素数称为麦森数,这时P一定也是个素数.但反过来不一定,即如果P是个素数,2P-1不一定也是素数.到1998年底,人们已找到了37个麦森数.最 ...

  10. 蓝桥杯 ALGO-26 算法训练 麦森数

    问题描述 形如2P-1的素数称为麦森数,这时P一定也是个素数.但反过来不一定,即如果P是个素数,2P-1不一定也是素数.到1998年底,人们已找到了37个麦森数.最大的一个是P=3021377,它有9 ...

最新文章

  1. 使用计算机视觉在钢铁平面上检测焊接缺陷
  2. java多线程-sleep()和wait()对比
  3. 28 数组中出现次数超过一半的数MoreThanHalfNum输入一个一维数组
  4. 汇编语言笔记14-端口
  5. TensorFlow创建tensor语句
  6. mysql on delete关键字_MySQL外键约束On Delete、On Update各取值的含义
  7. OpenCV delaunay三角剖分和voronoi镶嵌的实例(附完整代码)
  8. centos6实现kvm嵌套虚拟化
  9. python学习路线----天池龙珠计划Python训练营task1~3
  10. 树状数组-神奇的二进制
  11. Python ord(),chr()函数
  12. Unity 动态切换天空盒\反射天空盒材质
  13. PLC数据采集解决方案,BCNet数据采集
  14. 鲜为人知的合作:锐捷和juniper、联想和三茗
  15. PSPNet: Pyramid Scene Parsing Network论文解读
  16. 2012云计算发展趋势
  17. BCB:如何在BCB中使用CodeGuard
  18. SIM800C错误小结
  19. 番茄时钟(提升专注力,减少中断)- 番茄工作法
  20. RVB2601开发板试用3——以太网通讯测试

热门文章

  1. XiaoZi's CrackMe
  2. ##DBUtils工具类的正确使用(一)
  3. Netty :仿写微信 IM 即时通讯系统
  4. PDF压缩文件怎么压缩最小?用迅读PDF大师,一键无损压缩
  5. Unity中的角色属性芒星比例图
  6. 二手房房源信息数据分析项目完整流程
  7. 常用API——Object、Objects、StringBuilder
  8. [日推荐]『51好书推荐』专治假期综合症~
  9. [LOJ6198]谢特
  10. 报错:Ncat: bind to :::9999: Address already in use. QUITTING.