【题库】—— 深基4.例13 质数口袋

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int n,x;
long long sum=0;

int ans(int y)  
{
	for(int i=2; i<=sqrt(y); ++i) //判断是否是质数
	{
		if(y%i==0) 
		return 0;
	}
	return 1;
}

int main() 
{
	scanf("%d",&n);
	if(n<2)  //当n<2,此时无素数,输出0
	{
		printf("0\n");
		return 0;
	} 
	else if(n==2) //当n=2,有唯一素数2,输出2\n1\n
	{
		printf("2\n1\n");
		return 0;
	}
	for(int i=2; i<=n; ++i)  
	{

		if(ans(i)) 
		{
			printf("%d\n",i);
			sum+=i;
			x++;
		}
        if(sum+i>n) 
		{
			printf("%d\n",x);
			return 0;
		}
	}
	return 0;
}

也可在代码中加入,将所有偶数排除,减少代码运算量

cpp 复制代码
		if(i%2==0 && i!=2) 
		continue;
相关推荐
武昌库里写JAVA18 分钟前
SpringCloud+SpringCloudAlibaba学习笔记
java·开发语言·算法·spring·log4j
小咖拉眯30 分钟前
第十六届蓝桥杯模拟赛第二期题解—Java
java·数据结构·算法·蓝桥杯·图搜索算法
Sunyanhui132 分钟前
力扣 最长回文字串-5
算法·leetcode·职场和发展
csdn_aspnet36 分钟前
C# 程序来计算三角形的面积(Program to find area of a triangle)
算法·c#
xiangxiang-36 分钟前
目标检测,图像分割,超分辨率重建
算法·机器学习·支持向量机
一直学习永不止步37 分钟前
LeetCode题练习与总结:数组中两个数的最大异或值--421
java·算法·leetcode·字典树·数组·位运算·哈希表
机器学习之心1 小时前
异常检测 | 高斯分布拟合算法异常数据检测(Matlab)
算法·数学建模·matlab·异常数据检测
Ning_.1 小时前
力扣第 66 题 “加一”
算法·leetcode
kitesxian1 小时前
Leetcode437. 路径总和 III(HOT100)
算法·深度优先
YSRM1 小时前
异或-java-leetcode
java·算法·leetcode