题目内容:
找第n个默尼森数。P是素数且M也是素数,并且满足等式M=2P-1,则称M为默尼森数。例如,P=5,M=2P-1=31,5和31都是素数,因此31是默尼森数。
输入格式:
按提示用input()函数输入
输出格式:
int类型
输入样例:
4
输出样例:
127
import math
def prime(num):
if num == 1:
return False
for i in range(2, num):
if num % i == 0:
return False
else:
return True
def monisen(no):
cnt = 0
p = 1
while cnt < no:
p += 1
if prime(p):
m = pow(2,p) - 1
if prime(m):
cnt += 1
if cnt == no:
return m
print(monisen(int(input())))