본문으로 바로가기

[10/C++] 이백만 이하 소수의 합

category Solution/Project Euler 2018. 5. 24. 23:34
728x90
반응형

[10번 문제]


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
#include "stdafx.h"
#include <stdlib.h>
#include <iostream>
using namespace::std;
 
__int64 ans=0;
bool check_prime(int num)
{
    for (int k = 2; k <= sqrt(num); k++)
    {
        if (num % k == 0)
            return false;
    }
    return true;
}
int main()
{
    
    for (int i = 2; i < 2000000; i++)
    {
        if (check_prime(i))
        {
            ans += i;
            cout << i << endl;
        }
    }
    cout << ans  << endl;
    system("pause");
    return 0;
}
cs


728x90
반응형