poj2909——Goldbach's Conjecture
2011-01-01 15:57
295 查看
题意:给定一个数,求满足n=p1+p2,其中,p1、p2为质数。问有多少这样的对数?
思路:先打表,将质数表示出来。运用刷选法(或者叫什么了?反正名字差不多),用BFS实现!
思路:先打表,将质数表示出来。运用刷选法(或者叫什么了?反正名字差不多),用BFS实现!
#include<iostream> #include<cstdio> #include<cstring> using namespace std; bool prim[65535]; int queue[65535]; void solve() { memset(prim,true,sizeof(prim)); int front=0,rear=0; rear++;queue[rear]=2; while(front!=rear) { front++; int k=2; int index=k*queue[front]; while(index<65535) { prim[index]=false; k++; index=k*queue[front]; } for(int i=queue[front]+1;i<65535;i++) if(prim[i]) { rear++; queue[rear]=i; break; } } } int main() { solve(); int n; while(scanf("%d",&n)&&n) { int cnt=0; for(int i=2;i<=n/2;i++) { if(prim[i]&&prim[n-i]) cnt++; } printf("%d/n",cnt); } return 0; }
相关文章推荐
- POJ-2909-Goldbach's Conjecture
- POJ 2909 Goldbach's Conjecture (求x=p1+p2)
- POJ 2909 Goldbach's Conjecture(素数表)
- POJ 2909 Goldbach's Conjecture
- POJ 2909 && HDU 1397 Goldbach's Conjecture(数论)
- POJ 2909 Goldbach's Conjecture(我的水题之路——任一数为素数对之和)
- POJ 2909 Goldbach's Conjecture(简单题)
- POJ Goldbach's Conjecture(素数筛~欧拉筛法)
- POJ-2262 Goldbach's Conjecture 解题报告(数论) 哥德巴赫的猜想
- POJ 2262 Goldbach's Conjecture (求解素数的一般筛和线性筛)
- zoj 1951 || poj 2262 Goldbach's Conjecture(水水~)
- POJ 2262 Goldbach's Conjecture [暴力]
- POJ 2262 Goldbach's Conjecture(素数表)
- poj-2262 Goldbach's Conjecture
- poj 2262 Goldbach's Conjecture 素数 水题
- POJ 2262 Goldbach's Conjecture ( 筛选法求素数 )
- POJ2262,Goldbach's Conjecture,哥德巴赫猜想水过
- POJ 2262 Goldbach's Conjecture(数论)
- POJ-2262 Goldbach's Conjecture
- poj_2262_Goldbach's Conjecture(哥德巴赫猜想)