[ 2023-03-07 ๐ŸŽฉ TIL ]

Burkeyยท2023๋…„ 3์›” 7์ผ
0

TIL

๋ชฉ๋ก ๋ณด๊ธฐ
52/157

๋ฐฑ์ค€ 2775๋ฒˆ

t๋Š” ๋“ค์–ด์˜ค๋Š” ์ž…๋ ฅ์˜ ๊ฐ’์˜ ๊ฐฏ์ˆ˜
k๋Š” ์ถœ๋ ฅ ํ•  ์•„ํŒŒํŠธ์˜ ์ธต, k์ธต์•ˆ์— ์žˆ๋Š” n๋ฒˆ์งธ ์ง‘

ํ•ด๋‹น ๋ฌธ์ œ์— ๋‚˜์˜ค๋Š” ์•„ํŒŒํŠธ์— ์‚ด ์ˆ˜ ์žˆ๋Š” ๊ทœ์น™์€ k์ธต nํ˜ธ ์ง‘์— ์‚ด๊ณ  ์‹ถ์œผ๋ฉด
k-1์ธต์— 1๋ฒˆ์งธ ์ง‘๋ถ€ํ„ฐ nํ˜ธ ์ง‘๊นŒ์ง€ ์‚ฌ๋Š” ์‚ฌ๋žŒ์˜ ํ•ฉ์˜ ๊ฐฏ์ˆ˜์™€ ๋™์ผํ•œ ์ˆ˜์˜ ์‚ฌ๋žŒ ๋งŒ์ด ์‚ด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

0์ธต์— ์‚ฌ๋Š” ์‚ฌ๋žŒ์€ n์˜ ๊ฐ’๊ณผ ๋™์ผํ•œ ์‚ฌ๋žŒ์ด ์‚ด๊ณ  ์žˆ์Œ
=> 0์ธต 1ํ˜ธ -> 1๋ช…, 0์ธต 2ํ˜ธ-> 2๋ช…, ... 14ํ˜ธ -> 14๋ช… ๊นŒ์ง€

k์ธต n๋ฒˆ์งธ์— ์‚ฌ๋Š” ์‚ฌ๋žŒ๋“ค์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ๋ฌธ์ œ์ž…๋‹ˆ๋‹ค.

import sys

input = sys.stdin.readline

t = int(input())
apt = [[n for n in range(1, 16)]] # ์•„ํŒŒํŠธ 2์ฐจ์› ๋ฐฐ์—ด, 0์ธต์— ์‚ฌ๋Š” ์‚ฌ๋žŒ์€ ๋„ฃ์–ด๋†จ๋‹ค.

if (t > 1):
    for i in range(1, 15):
        apt_li = [1 for _ in range(1, 16)] # ํฌ๊ธฐ๊ฐ€ 15์ธ ๋ฐฐ์—ด ์„ ์–ธ 0์ธ๋ฑ์Šค๋Š” 1
        for j in range(1, 15):
            apt_li[j] = apt_li[j-1] + apt[i-1][j]
        apt.append(apt_li)

for _ in range(t):
    k = int(input())
    n = int(input())
    print(apt[k][n-1])

ํ•ด๋‹น ๋ฌธ์ œ๋Š” dp๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ’€์—ˆ์Šต๋‹ˆ๋‹ค.

์ด์ „ ์ธ๋ฑ์Šค์˜ ๊ฐ’๊ณผ ์ด์ „ ํ–‰์— ๋™์•Œ ์ธ๋ฑ์Šค๋ฅผ ๋”ํ•˜๋ฉด ํ•ด๋‹น ๊ฐ’์ด ๋‚˜์˜ต๋‹ˆ๋‹ค.(ํŒฉํ† ๋ฆฌ์–ผ ํ‘ธ๋Š” ๋ฒ•๊ณผ ๊ฑฐ์˜ ์œ ์‚ฌ)

์ฒ˜์Œ ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์‹œ์ž‘ํ–ˆ์„ ๋•Œ ํ’€๋ ค๊ณ  ์‹œ๋„ํ–ˆ๋˜ ๋ฌธ์ œ์˜€๋Š”๋ฐ ๊ทธ๋•Œ๋Š” ํ•ด๊ฒฐ ๋ชปํ•˜๊ณ  ๋„˜์–ด๊ฐ”์ง€๋งŒ ์˜ค๋Š˜ ํ•ด๊ฒฐํ•œ ๊ฒƒ์„ ๋ณด๋‹ˆ ๊ณต๋ถ€๋ฅผ ํ–ˆ๋˜๊ฒƒ์ด ํ—›๊ณ ์ƒ์€ ์•„๋‹ˆ์˜€๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์–ด ๋ฟŒ๋“ฏํ•ฉ๋‹ˆ๋‹ค. :)

profile
์Šคํƒฏ ์˜ฌ๋ฆฌ๋Š” ์ค‘

0๊ฐœ์˜ ๋Œ“๊ธ€