算法训练 麦森数

时间限制:1.0s 内存限制:256.0MB

问题描述

  形如2P-1的素数称为麦森数,这时P一定也是个素数。但反过来不一定,即如果P是个素数,2P-1不一定也是素数。到1998年底,人们已找到了37个麦森数。最大的一个是P=3021377,它有909526位。麦森数有许多重要应用,它与完全数密切相关。

  任务:从文件中输入P(1000<P<3100000),计算2P-1的位数和最后500位数字(用十进制高精度数表示)

输入格式

  文件中只包含一个整数P(1000<P<3100000)

输出格式

  第一行:十进制高精度数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

import java.math.BigInteger;
import java.util.Scanner; public class 麦森数 {
public static void main(String[] args) {
Scanner cin=new Scanner(System.in);
int p,len,i,cnt;
String s;
p=cin.nextInt();
BigInteger two,f,m;
two=BigInteger.ONE.add(BigInteger.ONE);
m=BigInteger.TEN.pow(500);
f=two.modPow(BigInteger.valueOf(p), m);
f=f.subtract(BigInteger.ONE);
if(f.compareTo(BigInteger.ZERO)<0)
f=f.add(m);
s=f.toString();
len=s.length();
cnt=0;
System.out.println((int)(Math.floor(p*Math.log10(2))+1));
for(i=1;i<=500-len;i++)
{
System.out.print('0');
cnt++;
if(cnt==50)
{
cnt=0;
System.out.println();;
}
}
for(i=0;i<len;i++)
{
System.out.print(s.charAt(i));
cnt++;
if(cnt==50)
{
cnt=0;
System.out.println();
}
}
} }

Java实现 蓝桥杯VIP 算法训练 麦森数的更多相关文章

  1. Java实现 蓝桥杯VIP 算法训练 求完数

    问题描述 如果一个自然数的所有小于自身的因子之和等于该数,则称为完数.设计算法,打印1-9999之间的所有完数. 样例输出 与上面的样例输入对应的输出. 例: 数据规模和约定 1-9999 publi ...

  2. Java实现 蓝桥杯VIP 算法训练 寂寞的数

    问题描述 道德经曰:一生二,二生三,三生万物. 对于任意正整数n,我们定义d(n)的值为为n加上组成n的各个数字的和.例如,d(23)=23+2+3=28, d(1481)=1481+1+4+8+1= ...

  3. Java实现 蓝桥杯VIP 算法训练 方格取数

    问题描述 设有NN的方格图(N<=10),我们将其中的某些方格中填入正整数,而其他的方格中则放入数字0. 某人从图的左上角的A 点(1,1)出发,可以向下行走,也可以向右走,直到到达右下角的B点 ...

  4. Java实现 蓝桥杯VIP 算法训练 回文数

    import java.util.Scanner; public class 回文数 { static int time = 0; public static int change(String st ...

  5. Java实现蓝桥杯VIP 算法训练 找公倍数

    问题描述 这里写问题描述. 打印出1-1000所有11和17的公倍数. 样例输入 一个满足题目要求的输入范例. 样例输出 与上面的样例输入对应的输出. 这道题其实没有什么可写的,但是为了让读者更方便的 ...

  6. Java实现 蓝桥杯VIP 算法训练 连通分块(并查集)

    试题 算法训练 连通分块 资源限制 时间限制:200ms 内存限制:8.0MB 问题描述 连通分块 输入格式 输入的第一行包含两个整数n, m n代表图中的点的个数,m代表边的个数 接下来m行,每行2 ...

  7. Java实现 蓝桥杯VIP 算法训练 无权最长链

    试题 算法训练 无权最长链 问题描述 给定一个n节点m边的无圈且连通的图,求直径 输入格式 第一行两个数字n,m 接下来m行每行两个数字x,y,代表x,y之间有一条边 输出格式 要求用户的输出满足的格 ...

  8. Java实现 蓝桥杯VIP 算法训练 星际交流

    算法训练 星际交流 时间限制:1.0s 内存限制:256.0MB 问题描述 人类终于登上了火星的土地并且见到了神秘的火星人.人类和火星人都无法理解对方的语言,但是我们的科学家发明了一种用数字交流的方法 ...

  9. Java实现 蓝桥杯VIP 算法训练 Car的旅行路线

    大家可以看一下这个,蓝桥杯官网的这道题是有问题的 Car的旅行路线 算法训练 Car的旅行路线 时间限制:1.0s 内存限制:256.0MB 提交此题 锦囊1 锦囊2 查看参考代码 问题描述 又到暑假 ...

随机推荐

  1. JavaScript 的核心机制——event loop(最易懂版)

    前言 javascript从诞生之日起就是一门单线程的非阻塞的脚本语言. 非阻塞就是当代码需要进行一项异步任务(无法立刻返回结果,需要花一定时间才能返回的任务,如ajax事件)时,主线程会挂起(pen ...

  2. LeetCode寻找两个有序数组的中位数

    题目: 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2. 请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n)). 你可以假设 nums1 和 nu ...

  3. Java中this()和super()

    Java关键字this只能用于方法体中.this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this,并且this只和特定的对象关联,而不和类关联,同一个类的不同对象有不同的th ...

  4. chrom浏览器总是将http请求强制转换成https请求

    chrome://net-internals/#hsts 中 Delete domain security policies 输入该站点,将将该站点删除一下就OK. 其他浏览器: Chrome 浏览器 ...

  5. SQL server 的使用中的subString() 和 charIndex() 实现筛选 某个字段的部分数据

    subString(): SUBSTRING ( expression , start , length ) 参数expression 是字符串.二进制字符串.text.image.列或包含列的表达式 ...

  6. jbpm4 candidate理解

    主要理解为团队合作时使用,团队总的任意人员都可以获取此任务,但是获取任务时需要使用: super.taskService.findGroupTasks("bb"); 根据组信息查找 ...

  7. flex和flex:1的含义

    一.flex详解 flex可以参考阮一峰老师的flex布局教程,很详细看完啥都懂了 链接:http://www.ruanyifeng.com/blog/2015/07/flex-grammar.htm ...

  8. 笨办法学习python之hashmap

    #!/user/bin/env python #-*-coding:utf-8 -*- #Author: qinjiaxi #初始化aMap列表,把列表num_buckets添加到aMap中,num_ ...

  9. MySQL++:Liunx - MySQL 主从复制

    目标:搭建两台MySQL服务器,一台作为主服务器,一台作为从服务器,实现主从复制 环境:虚拟机 主数据库:192.168.211.101 从数据库:192.168.211.102 MySQL 安装可参 ...

  10. HTML5新特性--svg-echarts(重点)-拖动API-WebWorker

    一.html5新特性--svg--(折线/渐变特效对象/滤镜) #折线:多个坐标点组件一条折线 <polyline points="50,50 70,55 60,66 " s ...