| ||||||||||
Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
Do you really think goldbach's conjecture is wrong when n == 6 ?In Reply To:好心人帮我看看,哪里错了~~ Posted by:chenhaifeng at 2007-10-17 20:26:57 > #include <stdio.h> > #include <string.h> > #include <stdlib.h> > > #define Maxn 1000005 > > int prime[80000]; > bool f[Maxn]; > int pt; > > void fact() > { > int i, j; > pt = 0; > memset(f, false, sizeof(f)); > for(i = 4;i <= 1000000;i += 2){ > f[i] = true; > } > f[0] = f[1] = f[2] = true; > for(i = 3;i <= 1000000;i++){ > if(f[i] == false){ > prime[pt++] = i; > if(i > 1000)continue; > j = i * i; > while(j <= 1000000){ > f[j] = true; > j += i; > } > } > } > } > > int main() > { > fact(); > int n, tag, i, a, b; > while(scanf("%d", &n) && n){ > tag = 0; > for(i = 0;i < pt;i++){ > if(prime[i] >= n || n - prime[i] < prime[i]) break; > if(f[n - prime[i]] == false && n - prime[i] != prime[i]){ > a = prime[i]; > tag = 1; > break; > } > } > if(tag == 0){ > printf("Goldbach's conjecture is wrong.\n"); > continue; > } > b = n - a; > printf("%d = %d + %d\n", n, a, b); > } > } Followed by: Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator