C/C++の宿題を片付けます 92代目
■ このスレッドは過去ログ倉庫に格納されています
0295デフォルトの名無しさん
2007/07/07(土) 12:57:46#include <stdio.h>
#define N 1000000
char sieve[N];
int main(void)
{
int i, j, temp1, temp2, max, m1, m2;
sieve[0] = sieve[1] = 1;
for(i=2; i*i<N; i++) {
if(sieve[i]==0) {
for(j=2*i; j<N; j+=i) sieve[j] = 1;
}
}
m1 = temp1 = 3;
m2 = temp2 = 2;
max = m1 - m2;
for(i=5; i<N; i++) {
if(sieve[i]==0) {
temp2 = temp1;
temp1 = i;
if(temp1 - temp2 > max) {
max = temp1 - temp2;
m1 = temp1;
m2 = temp2;
}
}
}
printf("%d - %d = %d", m1, m2, max);
return 0;
}
■ このスレッドは過去ログ倉庫に格納されています