Script / CSS

G1sUtil.js

G1sBlogger.js

G1sNavigationList.js

G1sCode

G1sTagList

Posts List

2012년 2월 15일 수요일

[Project Euler] 6. 1부터 100까지 "제곱의 합"과 "합의 제곱"의 차는?

6. 1부터 100까지 "제곱의 합"과 "합의 제곱"의 차는?
1부터 10까지 자연수를 각각 제곱해 더하면 다음과 같습니다 (제곱의 합). 
1² + 2² + ... + 10² = 385 
1부터 10을 먼저 더한 다음에 그 결과를 제곱하면 다음과 같습니다 (합의 제곱).
(1 + 2 + ... + 10)² = 552 = 3025 
따라서 1부터 10까지 자연수에 대해 "제곱의 합"과 "합의 제곱"의 차는 3025 - 385 = 2640 이 됩니다.
그러면 1부터 100까지 자연수에 대해 "제곱의 합"과 "합의 제곱"의 차는 얼마입니까?
Click

등차수열의 합의 제곱과 등비수열 중 제곱의 합을 구하는 공식입니다.
등비수열공식도 있지만 제곱을 위한 간단한 공식이 있으니 이를 이용합니다.

등차수열의 합.
(등비수열)제곱의 합
출처 : 수학이 알고싶은 중고대딩들을 위한 수학 노트

위에 두 공식을 이용해 구현.
<script>
function sigma_ak(n1, n2, a){
 return parseInt((n2-n1 + 1) * ((n2+n1) / 2.0) * a);
}
function sigma_k2(n){
 return parseInt(n * (n+1) * (2*n+1) /6 +0.5);
}
function p006(n){
 var r1 = sigma_ak(1,n,1);
 var r2 = sigma_k2(n); 
 alert(r1 * r1 - r2);
}
</script>

댓글 없음:

댓글 쓰기