문제 : 10 이하의 소수를 모두 더하면 2 + 3 + 5 + 7 = 17 이 됩니다.
이백만(2,000,000) 이하 소수의 합은 얼마입니까?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 | #include<stdio.h> int main() { double result = 0.0; int boolean = 0; int cnt = 0; int array[100] = {0}; for(int search=2 ; search<=2000000; search++){ int modCnt = 0; for(int i = 0; i<100; i++){ if(array[i] ==0) break; if(array[i] == search){ boolean = 1; } } if(boolean){ continue; } for(int i = 1; i<=search; i++){ if(search%i==0){ modCnt +=1; } } if(modCnt == 2){ if(array[99] !=0) array[cnt++] = search; result += (double)search; printf("search : %d / result : %f\n", search, result); } } return 0; } | cs |
search : 1999889 / result : 142903829133.000000
search : 1999891 / result : 142905829024.000000
search : 1999957 / result : 142907828981.000000
search : 1999969 / result : 142909828950.000000
search : 1999979 / result : 142911828929.000000
search : 1999993 / result : 142913828922.000000
soicem@soicem:~/Desktop/modSearch$
'* Computer Science > Project Euler' 카테고리의 다른 글
project euler 12. problem (0) | 2016.07.22 |
---|---|
project euler 11. problem (0) | 2016.07.21 |
project euler 9. problem (0) | 2016.07.19 |
project euler 8. problem (0) | 2016.07.18 |
project euler 7. problem (0) | 2016.07.17 |