문제
원문 보기 (영어)1부터 n까지의 정수를 사용하여 두 가지 값을 계산하세요: 먼저 정수들을 모두 더한 뒤 그 결과를 제곱합니다. 별도로 각 정수를 제곱한 뒤 그 제곱들을 모두 더합니다. 첫 번째 값에서 두 번째 값을 뺀 결과를 반환하세요.
difference_of_squares(n)을 구현하세요.
입력
n: 포함할 마지막 정수입니다.
출력
합의 제곱에서 제곱의 합을 뺀 값을 반환하세요.
제약 조건
0 ≤ n ≤ 50,000. n = 0일 때 두 합 모두 0입니다. 모든 필요한 값은 부호 있는 64비트 정수 범위에 들어갑니다.
예시
예시 1
입력:
n = 4
예상 출력:
expected = 70
입력:
long long n = 4;
예상 출력:
long long expected = 70;
입력:
long n = 4;
예상 출력:
long expected = 70;
설명
(1 + 2 + 3 + 4)² = 100. 제곱의 합은 1 + 4 + 9 + 16 = 30입니다. 빼면: 100 − 30 = 70.
예시 2
입력:
n = 1
예상 출력:
expected = 0
입력:
long long n = 1;
예상 출력:
long long expected = 0;
입력:
long n = 1;
예상 출력:
long expected = 0;
설명
두 값이 모두 1이므로, 차이는 0입니다.
참고 자료
이 문제는 CodeUtility에 맞게 수정되었습니다. 위의 설명과 제한 조건을 따르세요.