热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

HRBUST2039:麦森数问题

题目描述了麦森数的相关背景和计算方法。麦森数是指形如2^p-1的素数,其中p也是一个素数。尽管p是素数时,2^p-1不一定是素数,但已知的麦森数在数学和计算机科学中有着重要的应用。

麦森数是一种特殊的素数,形式为2^p-1,其中p本身也是一个素数。然而,并非所有p为素数时,2^p-1都是素数。截至1998年底,人们已经发现了37个麦森数,其中最大的一个P=3021377,它有909526位。麦森数在数学和计算机科学中具有重要的应用,尤其是与完全数的关系密切。

给定一个整数p,计算2^p-1的位数。

输入

输入包含多组数据,每组数据包括一个整数p(p ≤ 100000)。输入以文件结束符终止。

输出

对于每组输入数据,输出一行,包含一个整数n,表示2^p-1的位数。

样例输入

1279

样例输出

386

来源

2014 Winter Holiday Contest 5

作者

TwIStO

提示

可以通过计算log10(2) * p + 1来得到2^p-1的位数。

#include 
#include 
#include 
using namespace std;

int main() {
    int p;
    while (~scanf("%d", &p)) {
        printf("%d\n", int(log10(2) * p) + 1);
    }
    return 0;
}

推荐阅读
author-avatar
微公号莆田鞋园
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有