ㅇㅅㅇ

프로젝트 오일러(Project Euler) 6번문제 본문

프로그래밍/프로젝트 오일러

프로젝트 오일러(Project Euler) 6번문제

Lugun 2017. 6. 27. 18:15

Problem 6


1부터 10까지 자연수를 각각 제곱해 더하면 다음과 같습니다 (제곱의 합).

12 + 22 + ... + 102 = 385

1부터 10을 먼저 더한 다음에 그 결과를 제곱하면 다음과 같습니다 (합의 제곱).

(1 + 2 + ... + 10)2 = 552 = 3025

따라서 1부터 10까지 자연수에 대해 "합의 제곱"과 "제곱의 합" 의 차이는 3025 - 385 = 2640 이 됩니다.

그러면 1부터 100까지 자연수에 대해 "합의 제곱"과 "제곱의 합"의 차이는 얼마입니까?



풀이

  쉬어가는 문제인 것 같다. 따로 풀이할 내용이 없다. 그냥 합의 제곱과 제곱의 합의 차를 구하면된다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <stdio.h>
 
int main()
{
    int sum1 = 0, sum2 = 0;
 
    for (int i = 1; i <= 100; i++)
    {
        sum1 += i;
        sum2 = sum2 + i*i;
    }
    sum1 = sum1*sum1;
    printf("%d\n", sum1 - sum2);
}
cs



결과

 




Comments