acgo题库
  • 首页
  • 题库
  • 学习
  • 天梯
  • 备赛

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
  • 竞赛
  • 讨论
  • 团队
登录
注册
题目详情提交记录(0)
  • A80487.质数口袋 题解

    因为题目中我们并不需要特别大的质数(只关心前若干个连续质数的和 ≤ L),所以可以这样做: 从 i = 2i=2 开始逐个判断是否为质数; 判断时只需试除到 \sqrt{i} 如果是质数,则尝试加入“口袋”; 加入前先判断:sum + i <= L? 是 → 加入,输出,计数+1 否 → 直接 break(不能再装了) 继续下一个数 这样既保证了顺序性,又避免了不必要的计算。 ; 代码详见: 感谢阅读

    userId_undefined

    z:z:z:z:

    题解仙人出道萌新时空双修者位操作忍者快排信徒→排序之神
    32阅读
    4回复
    3点赞
  • 本题第一篇题解

    声明:这个代码不是最优解,但是保证能过 请看代码: #include<bits/stdc++.h> using namespace std; int main() { int n,f=1,num=0,sum=0;//num是储存个数的,sum是判断素数的和是否大于n的 cin>>n; for(int i=2;i<=n;i++) { for(int j=2;j<i;j++) { if(i%j==~0)//判断i是不是素数(编的时候不知道为什么等号和后面的字一直是黄色的,就加了个符号,做的时候不用加哦) { f=0;//是则f=0(1代表是素数,0代表不是) } } if(f==1)//判断f是否等于1 { sum+=i;//先把i储存起来,待会儿判断 if(sum>n)//判断sum+i是否大于n { break;//大于就跳出循环 } cout<<i<<endl;//不大于就输出i num++;//数量+1 } f=1;//重置f } cout<<num;//输出数量 return 0; } 觉得有用的点个赞吧

    userId_undefined

    AC狗(互关)

    时空双修者题解仙人造物者递归·套娃学徒维度操控者冒泡宗师→排序元老
    25阅读
    3回复
    1点赞
暂无数据

提交答案之后,这里将显示提交结果~

首页