알고리즘/SWEA
[SWEA] 2005_파스칼의 삼각형
엉아_
2021. 8. 18. 13:44
728x90
📕 문제
크기가 N인 파스칼의 삼각형을 만들어야 한다.
파스칼의 삼각형이란 아래와 같은 규칙을 따른다.
1. 첫 번째 줄은 항상 숫자 1이다.
2. 두 번째 줄부터 각 숫자들은 자신의 왼쪽과 오른쪽 위의 숫자의 합으로 구성된다.
N이 4일 경우,
N을 입력 받아 크기 N인 파스칼의 삼각형을 출력하는 프로그램을 작성하시오.
# 동적계획법 이용 # 메모이제이션 이용
def pascal_triangle(n):
pascal = [[1]]
for i in range(1, n):
lst = [1]
m = 0
while m+1 < len(pascal[i-1]):
lst.append(pascal[i-1][m]+pascal[i-1][m+1])
m += 1
lst.append(1)
pascal.append(lst)
return pascal
T = int(input())
for tc in range(T):
n = int(input())
triangle = pascal_triangle(n)
print('#{}'.format(tc+1))
for i in range(n):
print(*triangle[i])