본문 바로가기
Beakjoon&프로그래머스/파이썬

[백준/파이썬] 20152번 Game Addiction

by 현장 2022. 5. 12.

-Code

h, n = map(int, input().split())
size = abs(h - n) + 1
if size == 1:
    print(1)
else:
    dp = [[0 for _ in range(size)]for _ in range(size)]
    for i in range(size):
        dp[0][i] = 1
    for i in range(1, size):
        for j in range(size):
            if i <= j:
                dp[i][j] = dp[i - 1][j] + dp[i][j - 1]
    print(dp[size - 1][size - 1])

처음에는 모든 수를 1로 초기화 하여 dp를 생성하고 if문에 도 문제가 있었습니다. 그 부분을 고치니 거리의 차가 0일 경우 문제가 생겨서 if문을 넣어서 해결을 했습니다.