本站遷移

因為我最近租用了網路空間以及網域,
故本站已遷移至新網站~
這邊的資訊已經正在進行搬移的工作~
希望各位可以到新網站去逛XD

New Website:
http://knightzone.org/

搜尋此網誌

2011年2月9日 星期三

[UVa]543:Goldbach's Conjecture

建質數表,從1開始找質數,看看能不能找到兩個質數加起來等於輸入值,
那麼第一組找到的即是b-a相差最大的一組,即是所求。

[C](0.060)
#include<stdio.h>
int prime[1000005] = { 1, 0, 0 };
int main()
{
int i, j;
for( i = 2 ; i <= 1000000 ; i++ )
if( !prime[i] )
for( j = i+i ; j <= 1000000 ; j+=i )
prime[j] = 1;
int n;
while( scanf( "%d", &n ) != EOF && n != 0 )
{
int print = 0;
for( i = 2 ; i <= n ; i++ )
if( !prime[i] && !prime[n-i] )
{
printf( "%d = %d + %d\n", n, i, n-i );
print = 1;
break;
}
if( !print )
printf( "Goldbach's conjecture is wrong.\n" );
}
return 0;
}
view raw UVa543.c hosted with ❤ by GitHub

0 意見:

張貼留言