๐ŸŒ‰ ๋‹ค๋ฆฌ ๋†“๊ธฐ


๐Ÿ’ก ๋ฌธ์ œ ์ดํ•ดํ•˜๊ธฐ ๋ฐ ํ’€์ด ์•„์ด๋””์–ด

์„œ์ชฝ๊ณผ ๋™์ชฝ์„ ์ด์œผ๋Š” ์„œ๋กœ ๊ฒน์น˜์ง€ ์•Š๋Š” ๋‹ค๋ฆฌ์˜ ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ๊ตฌํ•ด์•ผ ํ•œ๋‹ค

 

 

 

โœ… ํ’€์ด ์ฝ”๋“œ

# ๋‹ค๋ฆฌ ๋†“๊ธฐ
T = int(input())

def bridge(n, m):
    dp = [[0 for _ in range(m+1)] for _ in range(n+1)]

    for i in range(1, m+1):
        dp[1][i] = i # N์ด 1์ผ ๋•Œ

    # N์ด 2 ์ด์ƒ์ผ ๋•Œ
    for i in range(2, n+1):
        for j in range(i, m+1):
            for k in range(j, i-1, -1):
                dp[i][j] += dp[i-1][k-1]
    return dp[n][m]

for _ in range(T):
    N, M = map(int, input().split())
    print(bridge(N,M))

 

728x90

+ Recent posts