구하고자 하는 위치 양 옆의 상단에 있는 수의 합을 삼각형으로 표현한 것
def Pascal(w, h, result): # 파스칼 함수 생성
for i in range(1, h): # row 범위 지정
for j in range(w): #col 범위 지정
result[i, j] = result[i-1, j-1] + result[i-1, j+1]
result[h-1, w] = 1 # 맨 끝의 행렬에 1 추가
print(result)
h = int(input()) # 행 갯수 입력
w = 2*h-1 # 열 갯수
result = np.zeros((h, w)) # 행과 열의 갯수에 맞게 ndarray 생성하여 0으로 리셋
result[0, w//2] = 1
Pascal(w-1, h, result)
# RGB 값으로 넣기
pascal = np.zeros((h, w, 3))
for i in range(len(result)):
for j in range(len(result[i])):
if result[i][j]:
pascal[i][j] = [result[i][j]*0.1, 0, 0]
else:
pascal[i][j] = [1, 1, 1]
fig = plt.figure()
plt.imshow(pascal)
plt.show
당신의 시간이 헛되지 않는 글이 되겠습니다.
I'll write something that won't waste your time.