Python으로 구현한 2005번 파스칼의 삼각형 문제 풀이입니다.
t = int(input())
for tc in range(1, t + 1) :
n = int(input())
board = [[0] * n for _ in range(n)]
for i in range(n) :
board[i][0] = 1
for i in range(1, n) :
for j in range(1, n) :
board[i][j] = board[i-1][j-1] + board[i-1][j]
print('#%d' % tc)
for i in range(n) :
for j in range(n) :
if board[i][j] != 0 :
print(board[i][j], end=' ')
print()
1. 각 테스트 케이스마다 N x N 크기의 board 리스트를 정의하고 모든 행의 0번째 요소를 1로 갱신한다.
2. board 리스트의 1번째 행, 1번째 열부터 해당 인덱스의 값을 왼쪽 대각선 위(board[i-1][j-1])와 위(board[i-1][j])에 존재하는 값의 합으로 갱신한다.
3. board 리스트의 요소를 하나씩 출력하는데 해당 위치의 값이 0이 아닐 경우에만 값을 출력하고 한 행에 대한 작업이 끝나면 줄바꿈을 수행한다.
'SWEA(Python) 풀이 > D2' 카테고리의 다른 글
SWEA[D2] (Python) 1926번 간단한 369게임 풀이 (0) | 2022.04.27 |
---|---|
SWEA[D2] (Python) 2007번 패턴 마디의 길이 풀이 (0) | 2022.04.27 |
SWEA[D2] (Python) 2001번 파리 퇴치 풀이 (0) | 2022.04.27 |
SWEA[D2] (Python) 1989번 초심자의 회문 검사 풀이 (0) | 2022.04.26 |
SWEA[D2] (Python) 1986번 지그재그 숫자 풀이 (0) | 2022.04.26 |