博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
题目22: 素数求和问题
阅读量:4104 次
发布时间:2019-05-25

本文共 1047 字,大约阅读时间需要 3 分钟。

描述
现在给你N个数(0<N<1000),现在要求你写出一个程序,找出这N个数中的所有素数,并求和。
输入
第一行给出整数M(0<M<10)代表多少组测试数据
每组测试数据第一行给你N,代表该组测试数据的数量。
接下来的N个数为要测试的数据,每个数小于1000
输出
每组测试数据结果占一行,输出给出的测试数据的所有素数和
样例输入
351 2 3 4 5811 12 13 14 15 16 17 181021 22 23 24 25 26 27 28 29 30
样例输出
104152

/**********************************   日期:2013-3-25*   作者:SJF0115*   题号: 题目22: 素数求和问题*   来源:http://acm.nyist.net/JudgeOnline/problem.php?pid=22*   结果:AC*   来源:南阳理工OJ*   总结:**********************************/#include
#include
#define MAXSIZE 1001int prime[MAXSIZE];//素数表void Prime(){ memset(prime,0,sizeof(prime)); for(int i = 2;i < MAXSIZE;i++){ //非素数跳过 if(prime[i]){ continue; } else{ for(int j = i*i;j < MAXSIZE;j += i){ prime[j] = 1; } } }}int main(){ int N,i,M,sum,x; //freopen("C:\\Users\\SJF\\Desktop\\acm.txt","r",stdin); scanf("%d",&N); //素数表 Prime(); prime[1] = 1; prime[0] = 1; //N组测试数据 while(N--){ sum = 0; //M个数据 scanf("%d",&M); for(i = 0;i < M;i++){ scanf("%d",&x); //素数相加 if(prime[x] == 0){ sum += x; } } printf("%d\n",sum); } return 0;}

转载地址:http://tucsi.baihongyu.com/

你可能感兴趣的文章
Android系统移植与调试之------->如何修改Android的默认语言、默认时区
查看>>
Grub 2:拯救你的 bootloader
查看>>
Android开发中常用ADB命令总结
查看>>
grep 命令系列:如何在 Linux/UNIX 中使用 grep 命令
查看>>
Android抓取各种log的方法
查看>>
在项目中记住Github用户名和密码的方法
查看>>
个人总结的一些C/C++编码规范
查看>>
10个超赞的jQuery图片滑块动画
查看>>
使用CentOS7配置Squid代理
查看>>
Memcached安装使用和源码调试
查看>>
Sublime Text 3必备插件
查看>>
Git大法好——3.Git分支本地操作详解
查看>>
Swift 开源项目精选-v1.0
查看>>
Android 热修复Nuwa的原理及Gradle插件源码解析
查看>>
Android开发之RecyclerView的使用全解
查看>>
秒杀系统架构分析与实战
查看>>
如何正确配置 Nginx+PHP
查看>>
App架构经验总结
查看>>
使用7z在Linux系统压缩备份文件
查看>>
使用AndroidStudio编译NDK的方法及错误解决方案
查看>>