백준 2721번: 삼각수의 합

5517 단어 python백준python

문제


문제 바로가기> 백준 2721번: 삼각수의 합

풀이

단순히 주어진 수학식을 구현하기만 하면 되는 문제이다.

def solution():
    import sys
    input = sys.stdin.readline
    T = int(input())
    for i in range(T):
        n = int(input())
        wn = [k*sum(range(1,k+2)) for k in range(1,n+1)]
        print(sum(wn))
solution()

코드 개선

1부터 n 까지의 합이 n*(n+1)//2임을 이용하면 시간을 2배 가까이 절약할 수 있었다.

def solution():
    import sys
    input = sys.stdin.readline
    T = int(input())
    for i in range(T):
        n = int(input())
        wn = [((k+1)*(k+2))//2*k for k in range(1,n+1)]
        print(sum(wn))
solution()

좋은 웹페이지 즐겨찾기