2013. 11. 12.

Project Euler - 문제 1번

Multiples of 3 and 5

Problem 1

If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.
Find the sum of all the multiples of 3 or 5 below 1000.


 1번 문제 : 만약 우리가 3의 배수나 5의 배수 중에서 10보다 작은 숫자를 나열하면 3,5,6 그리고 9를 얻을 것입니다. 이 숫자들의 합은 23입니다. 그러면, 1000보다 작은 숫자들 중에서 3의 배수이거나 5의 배수인 숫자들의 합은 얼마일까요?



 C++을 사용하면 mod를 이용해서 손쉽게 풀 수 있습니다. 제가 C++을 거의 모르는데, 문제들을 풀면서 하나씩 배워보려고 합니다. 먼저 저는 아래와 같이 코드를 작성해 보았습니다.

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
    int n=1000;
    int sum=0;
    
    for(int i=1; i<n; i++)
    {
        if(i%3==0||i%5==0)
            sum=sum+i;
    }
    
    return sum;
}

 컴파일을 하고 작동시켜보니 그 결과는 아래와 같이 나왔습니다.


그러면 이제 얻은 값을 Project Euler 홈페이지에 입력해 보겠습니다.


 그러면...


 정답입니다! 1번은 참 쉽군요. 앞으로는 코드만 일부 소개하고 정답은 가리도록 하겠습니다. Project Euler 정책에도 가급적이면 솔루션을 퍼트리지 말아달라고 하면서 정당한 경쟁을 할 수 있기를 바라더군요.


댓글 없음:

댓글 쓰기