PTA教辅 求n以内最大的k个素数以及它们的和
来源:互联网 发布:小小恋歌知乎 编辑:程序博客网 时间:2024/04/29 21:02
5-22 求n以内最大的k个素数以及它们的和 (20分)
本题要求计算并输出不超过n的最大的k个素数以及它们的和。
输入格式:
输入在一行中给出n(10≤\le≤n≤\le≤10000)和k(1≤\le≤k≤\le≤10)的值。
输出格式:
在一行中按下列格式输出:
素数1+素数2+…+素数k=总和值
其中素数按递减顺序输出。若n以内不够k个素数,则按实际个数输出。
输入样例1:
1000 10
输出样例1:
997+991+983+977+971+967+953+947+941+937=9664
输入样例2:
12 6
输出样例2:
11+7+5+3+2=28
分析:这个太水了,写这个就是花式的用用STL的二分玩玩。PS:我比较懒,没用筛法求素数表,不要学我。
#include <bits/stdc++.h>using namespace std;vector<int> mp;void init(){ for(int i=2; i<=10000; i++) { bool ok=1; for(int j=2; j<=sqrt(i); j++) { if(i%j==0) ok=0; } if(ok) mp.push_back(i); }}int main(){ init(); int n,k; cin>>n>>k; int pos=lower_bound(mp.begin(),mp.end(),n)-mp.begin(); long long ans=0; k=min(k,pos); for(int i=1;i<=k;i++) { printf("%d",mp[pos-i]); if(i!=k) cout<<"+"; ans+=mp[pos-i]; } cout<<'='<<ans; return 0;}
0 0
- PTA教辅 求n以内最大的k个素数以及它们的和
- PTA 求n以内最大的k个素数以及它们的和
- pta 习题集 5-14 求n以内最大的k个素数以及它们的和
- 5-36 求n以内最大的k个素数以及它们的和 (20分)
- 求n以内最大的k个素数以及它们的和
- 求N以内的素数。
- 求n以内的最大素数,若n最大为21亿
- 求正整数n以内的所有素数
- 求N以内的所有素数
- 求n以内的素数个数问题
- 求素数,给你一个n,输出n以内的素数
- 【ZOJ 1562和 BZOJ 1053】【反素数】【求n以内的因子最多的那个数(即不超过n的最大反素数)】
- 求100以内的素数以及个数
- 求前n个素数的和
- 求从K开始的N个素数
- 从键盘输入N个十进制数,求它们的和
- 素数标记法求n以内所有的素数
- 求100以内的所有素数 和 求前100个素数
- [Mysql]数据查询语言(DQL)
- 2017 女生赛总结
- grunt和gulp对比
- 窗口的子类化与超类化——子类化是窗口实例级别的,超类化是在窗口类(WNDCLASS)级别的
- [PAT-乙级]1017.A除以B
- PTA教辅 求n以内最大的k个素数以及它们的和
- Linux内核之板卡作外设存储功能
- 【C语言训练】邮票组合问题
- Jquery基础---w3cschool
- 编程实现库函数strcat
- LeetCode-algorithms 357. Count Numbers with Unique Digits
- C/C++语言之通过定义指针函数方式来实现在一个cpp文件里面获取另外一个cpp文件函数的返回值
- 我的开发成果截图
- [PAT-乙级]1018.锤子剪刀布