科丁乐20200223 模拟赛第二题
作者:互联网
科丁乐20200223 模拟赛第二题
题目:
2020年新年伊始,新型冠状病毒开始在中国多地肆虐,疫情防控形势复杂严峻。
小科则认为2020年是一个不够幸运的年份,而他又发现2020这个数字不是一个质数,所以他认为如果年份是质数的话,那么这一年就是一个“Lucky year”,例如第一个Lucky year是公元2年,第二个Lucky year是公元3年,然后是公元5年…现在小科想知道第n个Lucky year是公元多少年?以及它和下一个lucky year相隔多少年?请你帮助小科找到答案。
解析:
这道题
很简单
难度较低
但是首先
至少要会判断素数
一个一个判断
最后
再输出就可以了
可以定义一个变量ans
用来当作计数器
再开一个死循环
每发现一个素数
ans就++
并且
保存这个素数
直到
ans==n
退出循环
输出就可以了
但是容易
爆掉
这道题的数据量
不大
所以可以
打表策略
下面附上代码
不过不是打表
如要打表
请自己写:
#include<iostream>
#include<cstdlib>
#include<cstdio>
using namespace std;
int main()
{
int sum=0,n,i=2,L=0,R=2;
cin>>n;
n++;
bool flag=true;
while(sum>-1)
{
if(i==2)
{
sum++;
i++;
continue;
}
if(i!=2&&i%2==0)
{
i++;
continue;
}
flag=true;
for(int j=2;j<=i-1;j++)
{
if(i%j==0)
{
flag=false;
break;
}
}
if(flag==true)
{
L=R;
R=i;
sum++;
}
if(sum==n) break;
i++;
}
cout<<L<<" "<<R-L;
return 0;
}
zliang_ma
发布了17 篇原创文章 · 获赞 0 · 访问量 329
私信
关注
标签:科丁乐,++,sum,20200223,Lucky,2020,year,include,模拟 来源: https://blog.csdn.net/zliang_ma/article/details/104481794