洛谷P5723 【深基4.例13】质数口袋
程序员文章站
2022-03-07 20:18:13
知识点:质数判断方法。#includeusing namespace std;int zhishu(int x){//判断是否为质数for(int i=2;i*i<=x;i++){//对2到根号x求余if(i%2==0&&i!=2) continue;//偶数肯定是非质数,这步是优化if(x%i==0)return 0;}return 1;}int main(){int i,L,j,sum=0,c....
知识点:质数判断方法。
#include<iostream>
using namespace std;
int zhishu(int x){ //判断是否为质数
for(int i=2;i*i<=x;i++){ //对2到根号x求余,减少运算量
if(i%2==0&&i!=2) continue; //偶数肯定是非质数,这步是优化
if(x%i==0)return 0;
}
return 1;
}
int main(){
int i,L,j,sum=0,cnt=0;
cin>>L;
for(i=2;i<L&&sum<L;i++){
if(zhishu(i)==1){
sum+=i;
if(sum<=L){
cout<<i<<endl;
cnt++; //计数
}
}
}
if(L>2)cout<<cnt<<endl; //由题意,注意范围还有1,2,要不然过不全
else if(L==2)cout<<2<<endl<<1<<endl;
else if(L==1)cout<<0<<endl;
return 0;
}
如果本文对您有帮助,可不可以给萌新点一个赞,鼓励小萌新坚持写博客的热情!
本文地址:https://blog.csdn.net/qq_44491991/article/details/107287907