博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU5150 Sum Sum Sum
阅读量:6685 次
发布时间:2019-06-25

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

问题链接:。

题意简述:测试数据有多组,每组首先输入正整数n(1n1000),然后输入n个整数(1≤整数1000)。计算其中素数的和。

问题分析:对于测试数据比较多的情况,打表合适的。

程序说明使用筛选法进行打表,然后再判断合计。

AC的C语言程序如下:

/* HDU5150 Sum Sum Sum */#include 
#include
#include
#define MAXN 1000int notprime[MAXN+1];void esieve(int p[], int n){ int i, j; memset(p, 0, MAXN+1); // 筛选 int max = (int)sqrt(n); for(i=2; i<=max; i++) { if(p[i] == 0) { for(j=i+i; j<=n; j+=i) p[j] = 1; } }}int main(void){ esieve(notprime, MAXN); int n, sum, val, i; while(scanf("%d", &n) != EOF) { sum = 0; for(i=1; i<=n; i++) { scanf("%d", &val); if(!notprime[val]) sum += val; } printf("%d\n", sum); } return 0;}

转载于:https://www.cnblogs.com/tigerisland/p/7564307.html

你可能感兴趣的文章
SQL中查询数据表字段名称的查询语句
查看>>
关于masonry
查看>>
mysql单表导入数据,全量备份导入单表
查看>>
GAITC 2019全球人工智能技术大会(南京)
查看>>
使用gradle生成protobuf
查看>>
transition transform animate的使用
查看>>
WebService_HelloWorld
查看>>
【翻译】Ext JS最新技巧——2014-5-12
查看>>
全局临时表
查看>>
谈谈加载(Loading)的那点事
查看>>
关于nginx的Job for nginx.service failed because the control process exited with error code.错误
查看>>
微信公众平台开发(108) 微信摇一摇
查看>>
Java 函数参数传递方式详解 分类: Java Game ...
查看>>
cryptography TransformFinalBlock 返回指定长度的哈希值
查看>>
js实现图片懒加载
查看>>
Struts2之拦截器
查看>>
java实现文件单词频率统计 topN top K
查看>>
Excel 增加删除线
查看>>
三大排序
查看>>
springmvc的渲染
查看>>