(T(n) = 1 + 2 + ... + n)을 정의에 따르면, 이는 첫 (n)개의 자연수의 합으로, 다음과 같이 표현할 수 있다:
$$T(n) = \frac{n(n+1)}{2}$$
이를 사용하여 (W(n))을 계산하면
$$W(n) = \sum_{k=1}^{n} k \cdot T(k+1)$$
이제 (T(k+1))을 정의된 대로 대입해보겠습니다:
$$T(k+1) = \frac{(k+1)(k+2)}{2}$$
따라서:
$$W(5) = \sum_{k=1}^{5} k \cdot \frac{(k+1)(k+2)}{2}$$
이를 Python 코드로 계산하면
def W(n):
return sum(k * (k + 1) * (k + 2) // 2 for k in range(1, n + 1))
# 사용 예시
n = 5
W(n) # 결과 출력
이 코드를 실행하면 ( W(5) )의 값이 210임을 확인할 수 있다.
그런데 이 수식은 반복문을 사용하고 합계를 구하는 식으로 닫 힌 수식이 될 수 있을 것 같았다.
--- ---
주어진 합계:
$$ \sum_{k=1}^{n} \frac{k(k + 1)(k + 2)}{2} $$ 를 닫힌 수식으로 나타내기 위해 다음과 같은 과정을 거친다.
- 각 항을 전개하여 합을 나타낸다.
$$ k(k + 1)(k + 2) = k(k^2 + 3k + 2) = k^3 + 3k^2 + 2k $$
따라서 원래의 합은 다음과 같다:
$$ \sum_{k=1}^{n} \frac{k(k + 1)(k + 2)}{2} = \frac{1}{2} \sum_{k=1}^{n} (k^3 + 3k^2 + 2k) $$
- 각 항에 대해 닫힌 수식을 적용한다.
- $$ \sum_{k=1}^{n} k^3 = \left( \frac{n(n + 1)}{2} \right)^2 $$
- $$ \sum_{k=1}^{n} k^2 = \frac{n(n + 1)(2n + 1)}{6} $$
- $$ \sum_{k=1}^{n} k = \frac{n(n + 1)}{2} $$
이를 결합하면:
$$ \frac{1}{2} \left( \left( \frac{n(n + 1)}{2} \right)^2 + 3 \cdot \frac{n(n + 1)(2n + 1)}{6} + 2 \cdot \frac{n(n + 1)}{2} \right) $$
- 이를 단일 분모를 가지도록 정리한다. 모든 항의 분모를 24로 맞추면:
$$ \frac{1}{2} \left( \frac{6n^2(n + 1)^2}{24} + \frac{12n(n + 1)(2n + 1)}{24} + \frac{24n(n + 1)}{24} \right) $$
- 각 항을 분자에 다시 쓰고 결합한다.
$$ \frac{1}{48} \left( 6n^2(n + 1)^2 + 12n(n + 1)(2n + 1) + 24n(n + 1) \right) $$
- 각 항을 전개하고 합치면:
$$ 6n^2(n + 1)^2 = 6n^2(n^2 + 2n + 1) = 6n^4 + 12n^3 + 6n^2 $$
$$ 12n(n + 1)(2n + 1) = 12n(2n^2 + 3n + 1) = 24n^3 + 36n^2 + 12n $$
$$ 24n(n + 1) = 24n^2 + 24n $$
이를 합치면:
$$ 6n^4 + 12n^3 + 6n^2 + 24n^3 + 36n^2 + 12n + 24n^2 + 24n = 6n^4 + 36n^3 + 66n^2 + 36n $$
- 분자를 인수분해하면:
$$ 6n^4 + 36n^3 + 66n^2 + 36n = 6(n^4 + 6n^3 + 11n^2 + 6n) = 6n(n + 1)(n + 2)(n + 3) $$
따라서, 최종적으로 합계는 다음과 같이 표현된다:
$$ \sum_{k=1}^{n} \frac{k(k + 1)(k + 2)}{2} = \frac{n(n + 1)(n + 2)(n + 3)}{8} $$
이로써 주어진 합계가 닫힌 수식으로 유도되었다.
_, *ns = map(int, open(0).read().split())
open(1,"w").write('\n'.join([str((n * (n + 1) * (n + 2) * (n + 3)) >> 3) for n in ns]))