문제
은하는 수업 때 부터 까지 수의 합과 부터 까지 수의 세제곱의 합과 관련된 다음 공식을 배웠습니다.
- $ (1+2+⋯+N)^2=1^3+2^3+⋯+N^3$
믿을 수 없었던 은하는 직접 코딩을 해서 검증해 보기로 했습니다. 부터 까지 수의 합과 그 수를 제곱한 수, 또 부터 까지 수의 세제곱의 합을 차례대로 출력하세요.
입력
첫 줄에 문제의 정수 이 주어집니다.
출력
세 줄을 출력하세요.
- 첫 줄에는 부터 까지 수의 합 을 출력하세요.
- 둘째 줄에는 부터 까지 수의 합을 제곱한 수 을 출력하세요.
- 셋째 줄에는 부터 까지 수의 세제곱의 합 을 출력하세요.
풀이 과정
시간 제한이 있는 문제니, 가우스 공식을 활용하여 출력한다.
$(1+2+\cdots+N)^2$ 은 $(N \times (N + 1) \div 2)^2$ 이고, $1^3+2^3+\cdots+N^3$ 은 $(N \times (N + 1) \div 2)^2$ 이니 같다.
C
#include <stdio.h>
int main(void) {
int n;
scanf("%d", &n);
printf("%d\n", n*(n+1)/2);
printf("%d\n", (n*(n+1)/2)*(n*(n+1)/2));
printf("%d", (n*(n+1)/2)*(n*(n+1)/2));
return 0;
}
Python
n = int(input())
res = n*(n+1)//2
print(res)
print(res**2)
print(res**2)
'-- 예전 기록 > BOJ' 카테고리의 다른 글
[ BOJ ] 6825 : Body Mass Index ( BRONZE 4 ) / C, Python (0) | 2023.10.03 |
---|---|
[ BOJ ] 19602 : Dog Treats ( BRONZE 4 ) / C, Python (0) | 2023.10.03 |
[ BOJ ] 5585 : 거스름돈 ( BRONZE 2 ) / C, Python (0) | 2023.10.03 |
[ BOJ ] 29720 : 그래서 님 푼 문제 수가? ( BRONZE 3 ) / C, Python (0) | 2023.10.03 |
[ BOJ ] 28444 : HI-ARC=? ( BRONZE 5 ) / C, Python (0) | 2023.10.03 |