* Computer Science/Project Euler

project euler 10. problem

soicem 2016. 7. 20. 16:44

문제 : 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