PTA——求n以内k个质数和
PTA
7-51 求n以内最大的k个素数以及它们的和
#include<stdio.h>
#include<math.h> int isPrime(int n);
int main() {
int i,cnt=,n,k,sum;
scanf("%d%d",&n,&k);
for(i=n; i>=; i--) {
if(i!= && isPrime(i) && cnt<k-) {
sum += i;
cnt++;
printf("%d+",i);
} else if(i== ||(isPrime(i) && cnt==k-)) {
sum += i;
cnt++;
printf("%d=",i);
}
if(cnt==k) break;
}
printf("%d",sum);
} int isPrime(int n) {
int i,flag = ;
for(i=; i<=(int)sqrt(n); i++) {
if(n%i==) flag = ;
}
return flag;
}
我的程序,自己写了几个测试都对,但不知为啥在PTA里全错。。。
#include <stdio.h>
#include <math.h>
#define N 10
int isPrime(int p);
int main(){
int n, k, i, count, sum=;
int maxPrimes[N];
scanf("%d%d", &n, &k);
i = n;
count = ;
while(i>){
if(count<k){
if(isPrime(i)){
maxPrimes[count] = i;
sum += i;
count++;
}
}
else{
break;
}
i--;
}
for(i=; i<count-; i++){
printf("%d+", maxPrimes[i]);
}
printf("%d=%d", maxPrimes[count-], sum); return ;
}
int isPrime(int p){
int isPrime=;
int i;
if(p<){
isPrime = ;
}
else{
for(i=; i<=(int)sqrt(p); i++){
/*若p为合数,则必有不大于sqrt(p)的因子*/
if(p%i == ){
isPrime = ;
break;
}
}
}
return isPrime;
}
云上的程序,用数组存储比我的实现更自然,当然PTA结果也全对,差距啊。。
PTA——求n以内k个质数和的更多相关文章
- while做法1.兔子生兔子 2.求100以内质数的和3.洗发水15元 牙膏5元 香皂2元 150元的算法
1.兔子生兔子 2.求100以内质数的和 3.150块钱花完问题
- while:1.兔子生兔子问题 2.打印菱形 3.求100以内质数的和4.洗发水15元一瓶,牙膏5元一支,香皂2元一块,150元刚好花完
1.兔子生兔子问题: 2.打印菱形 3.求100以内质数的和 4.洗发水15元一瓶,牙膏5元一支,香皂2元一块,150元刚好花完有多少种情况?
- for嵌套:1.兔子生兔子问题 2.打印菱形 3.求100以内质数的和
1.兔子生兔子问题 方法一: 方法二: 2.打印菱形 3.求100以内质数的和
- 求1000以内的质数c语言
之前在做求1000以内的质数的时候,我们一般能想到的就是从3~(根号)no,逐一和no除,如果存在某个i使得 i|no成立的话,说明no不是质数(“i|no”是i整除除no的意思): 在<明解 ...
- HDU-2204-Eddy's爱好-容斥求n以内有多少个数形如M^K
HDU-2204-Eddy's爱好-容斥求n以内有多少个数形如M^K [Problem Description] 略 [Solution] 对于一个指数\(k\),找到一个最大的\(m\)使得\(m^ ...
- 用SQL求1到N的质数和
今天在百度知道中,遇到了一位朋友求助:利用sql求1到1000的质数和.再说今天周五下午比较悠闲,我就在MSSQL 2008中写了出来,现在分享在博客中,下面直接贴代码: declare @num i ...
- 【C语言】输入一个整数N,求N以内的素数之和
[C语言]输入一个整数N,求N以内的素数之和 /* ========================================================================== ...
- 斐波那契数列(递归)&求100以内的素数
Java 5 添加了 java.util.Scanner 类,这是一个用于扫描输入文本的新的实用程序.它是以 前的 StringTokenizer 和 Matcher 类之间的某种结合.由于任何数据都 ...
- 求10000以内n的阶乘(openjudge 2923)
求10000以内n的阶乘 总时间限制: 5000ms 内存限制: 655360kB 描述 求10000以内n的阶乘. 输入 只有一行输入,整数n(0<=n<=10000). 输出 一行 ...
随机推荐
- luogu1706全排列
#include<bits/stdc++.h> using namespace std; +]; +]; int search(int k); int print(); int n,num ...
- Jsp的table导出Excel
var idTmr; function getExplorer() { var explorer = window.navigator.userAgent ; //ie if (explorer.in ...
- 2017年4月13日用VS写C程序遇到的一些问题
在网上找到一篇展示计算机浮点数格式的文章,且有C代码如下: #include <stdio.h> #include <stdlib.h> #include <string ...
- node.js学习4--------------------- 根据不同路径来响应内容,以及中文乱码的解决
/** * http服务器的搭建,相当于php中的Apache或者java中的tomcat服务器 */ // 导包 const http=require("http"); //创建 ...
- change the version of python on my centos
There are two versions of aconda: aconda and aconda3 in my home directorys. When comment the environ ...
- placeholder是H5的一个新属性,但是在IE9以下是不支持的
$(function() { // 如果不支持placeholder,用jQuery来完成 if(!isSupportPlaceholder()) { // 遍历所有input对象, 除了密码框 $( ...
- C语言编译数组中有的加code有的不加,有什么区别
像uchar code table[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};和uchar ds1302[]={0xfe,0xfd,0xfb,0xf7,0 ...
- pycharm 输入法光标跟随
- Testner测试圈关于页面响应时间的测试行业标准
Testner测试圈针对小程序页面的响应时间标准建议如下:0-2秒 用户体验好,可以选择性改善,如首屏体验做到秒开等2-4秒 用户体验一般,有改善空间4-6秒 用户体验较差,有较大改善空间6秒以上 用 ...
- MySQL之UNION与UNION ALL
数据表中的数据如下: UNION: 可以获取books表与articles表中所有不同的title,如果两个表中title相同的只会显示一个. UNION ALL : 可以获取books表与arti ...