-
728x90
1부터 n까지 제곱의 합
의사코드(pseudocode)로 알고리즘을 설계해보면 다음과 같이 생각해볼 수 있다.
- 합을 기록할 변수 s를 만들고 0을 저장한다.
- 변수 i를 만들어 1부터 n까지의 숫자를 1씩 증가시키며 반복한다.
- 기존의 s에 i와 i를 곱해(제곱)얻은 값을 더해서 다시 s에 저장한다.
- 반복이 끝났을 때 s에 저장된 결과값을 리턴한다.
첫 번째 방법
def sum_sq(n): s = 0 for i in range(1, n+1): s = s + i * i return s print(sum_sq(10)) print(sum_sq(100)) # 실행 결과 385 338350
두 번째 방법
def sum_sq(n): return n * (n + 1) * (2 * n + 1) // 6 print(sum_sq(10)) print(sum_sq(100)) # 실행 결과 385 338350
Reference
728x90'Developer > Algorithm' 카테고리의 다른 글
최댓값, 최솟값 찾기 & 최댓값 위치 구하기 (0) 2021.07.08 1부터 n까지 연속한 숫자의 합 (0) 2021.07.06 절대값 구하기 (0) 2021.07.06 댓글