Python/[코드트리]
[코드트리] 순서대로 채우기 > 격자로 사각형 만들기
hyunnn_00
2023. 7. 17. 14:24
아래 조건을 만족하도록 격자를 만들어 출력하는 프로그램을 작성해보세요.
- 첫 번째 행과 첫 번째 열에는 모두 1이 들어갑니다.
- 나머지 칸들은 바로 위의 값과 바로 왼쪽 값, 그리고 왼쪽 위의 값의 합이 되어야 합니다.
- 크기는 n x n 입니다.
# 2차원 배열 생성
n = int(input())
arr_2d = [
[1 for _ in range(n)]
for _ in range(n)
]
for i in range(1, n):
for j in range(1, n):
arr_2d[i][j] = arr_2d[i-1][j] + arr_2d[i-1][j-1] + arr_2d[i][j-1]
# 출력
for rows in arr_2d:
for elem in rows:
print(elem, end = " ")
print()
# 해설
# n을 입력받습니다.
n = int(input())
# 2차원 배열을 구현합니다.
arr = [
[0 for _ in range(n)]
for _ in range(n)
]
# 배열의 첫 행과 첫 열을 1로 초기화합니다.
for i in range(n):
arr[0][i] = 1
arr[i][0] = 1
# 배열의 숫자를 채웁니다.
for i in range(1, n):
for j in range(1, n):
arr[i][j] = arr[i - 1][j] + arr[i][j - 1] + arr[i - 1][j - 1]
# 채워진 배열을 출력합니다.
for row in arr:
for elem in row:
print(elem, end=" ")
print()