HDU 5104 Primes Problem
来源:互联网 发布:阿里云rds连不上 编辑:程序博客网 时间:2024/05/19 13:31
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5104
首先将10000内的素数筛出来(约1000个),直接枚举前两个 p1, p2, 检查n-p1-p2是不是素数。是则答案加一。素数打表代码:
#define N 10000bool prime[N];int primes[N];void make_prime(){memset(prime,1,sizeof(prime));int cnt=0;prime[0]=false;prime[1]=false;for (int i=2;i<N;i++) if (prime[i]) {primes[++cnt]=i;for (int k=i*i;k<N;k+=i)prime[k]=false; }}
AC代码:
#include <iostream>#include<cstdio>#include<cstring>#include<cmath>using namespace std;#define N 10000bool prime[N];int primes[N];void make_prime(){memset(prime,1,sizeof(prime));int cnt=0;prime[0]=false;prime[1]=false;for (int i=2;i<N;i++) if (prime[i]) {primes[++cnt]=i;for (int k=i*i;k<N;k+=i)prime[k]=false; }}int main(){ int n; make_prime(); while(scanf("%d",&n)!=EOF) { int count=0; for(int i=1;primes[i]<n;i++) for(int j=i;primes[j]<n;j++) { int k=n-primes[i]-primes[j]; if(prime[k] && k>=primes[j]) count++; } printf("%d\n",count); } return 0;}
0 0
- HDU 5104 Primes Problem
- HDU 5104 Primes Problem
- hdu 5104 Primes Problem
- HDU-#5104 Primes Problem
- HDU 5104 Primes Problem
- hdu 5104 Primes Problem
- HDU 5104 Primes Problem
- hdu 5104 Primes Problem
- HDU 5104 Primes Problem
- HDU 5104-Primes Problem
- hdu 5104 Primes Problem(数学)
- HDU 5104 - Primes Problem (枚举)
- HDU 5104 Primes Problem(数学)
- hdu 5104 Primes Problem(素数判定)
- HDU 5104 Primes Problem(打表)
- HDU--Primes Problem
- HDOJ 5104 Primes Problem
- HDU 5104 Bestcoder #18 1001 Primes Problem 水题
- 裁切出一张圆形的头像图片
- StringBuilder的用法及和String的区别
- JavaScript语言基础8
- Getting Started
- StringBuilder用法
- HDU 5104 Primes Problem
- Hdu 1172 猜数字
- iOS事件拦截(实现触摸任意位置隐藏指定view)
- java keytool 安全证书
- 第十二周项目3-用递归方法求解(一)
- Java虚拟机原理图解
- 9种常见内部排序算法的性能比较
- unittest模块
- Android解惑 - 为什么要用Fragment.setArguments(Bundle bundle)来传递参数