Python/๋ฐฑ์ค2 ๋ฐฑ์ค 2293๋ฒ : ๋์ 1 ๐ ์ ์ถ ์ฝ๋ import sys input = sys.stdin.readline n, k = map(int, input().split()) c = [int(input()) for i in range(n)] dp = [0 for i in range(k+1)] dp[0] = 1 for i in c: for j in range(i, k+1): if j-i >= 0: dp[j] += dp[j-i] print(dp[k]) ํต์ฌ๋ฝ์ธ๋จ : * ๋์ ๊ณํ๋ฒ (Dynamic Programming, DP) ๋ฌธ์ ๋ฅผ ํ ๋ ๊ณ ๋ คํด์ผํ ๊ฒ๋ค '์ ์ฒด ๋ฌธ์ '๋ฅผ '๋ถ๋ถ ๋ฌธ์ '๋ก ์ ๋๋ ์ ๋ฌธ์ ๋ฅผ ์ ๊ทผํ๋๊ฐ? ์ ์ฒด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํ ๋ถ๋ถ ๋ฌธ์ ์ ์ ํ์์ ๋ฌด์์ธ๊ฐ? ๋ถ๋ถ ๋ฌธ์ ๋ค์ ํด๊ฒฐ ํ ์ป์ ๊ฒฐ๊ณผ๊ฐ๋ค์ ๋ฉ๋ชจ์ด์ ์ด์ ํ์๋๊ฐ? ๋ถ๋ถ.. 2023. 8. 17. ๋ฐฑ์ค 11650๋ฒ : ์ขํ ์ ๋ ฌํ๊ธฐ (python) ๋ฌธ์ ๋ฅผ ํตํด์ ์ ์ ์๋ ์ : 1. 2์ฐจ์ ํ๋ฉด ์์ ์ N๊ฐ → 2์ฐจ์ ๋ฐฐ์ด์ ์ฌ์ฉํด๋ณผ๊น? 2. ์ขํ๋ฅผ x์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก 3. x์ขํ๊ฐ ๊ฐ์ผ๋ฉด, y์ขํ๊ฐ ์ฆ๊ฐํ๋ ์์ผ๋ก 4. ์ ๋ ฌ → sorted(), sort() ํจ์ ์๊ฐํ ์ ์์ ํ์ํ ์ ๋ ฅ๊ฐ : 1. ์ฒซ์งธ ์ค : ์ ์ ๊ฐ์ N 2. ๋์งธ ์ค ~ : i๋ฒ์ ์ ์์น xi์ yi (์์น๊ฐ ๊ฐ์ ๋ ์ ์ ์๋ค) → ๋์งธ ์ค๋ถํฐ ์ ๋ ฅ ๊ฐ์ ๋ฐ๋ ๊ฒ์ด๋ฏ๋ก ๋ฐ๋ณต๋ฌธ ๋๋ ค์ผ๋จ ํ์ ๊ฐ๋ฅ ์ถ๋ ฅ๊ฐ : 1. ์ฒซ์งธ ์ค ~ N๊ฐ์ ์ค์ ์ ์ ์ ๋ ฌํ ๊ฒฐ๊ณผ → (ํ ์ค๋ก ๋ฐฐ์ด์ ๋ณด์ฌ์ฃผ๋ ๊ฒ์ด ์๋๊ณ ) ๊ฐ i๋ฒ์งธ ๋ฐฐ์ด์ ์์๋ฅผ ์ฐจ๋ก๋๋ก ์ถ๋ ฅํด์ผํจ์ ๋ณด๊ณ ์ด ๋ํ ๋ฐ๋ณต๋ฌธ์ ๋๋ ค์ ์ถ๋ ฅ์ ํด์ผํ๋๊ตฌ๋ ์๊ฐํ ์ ์์ ๐ ํ์ ํ ๊ฒ์ ๋ฐํ์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํด๋ณด์! STE.. 2023. 5. 19. ์ด์ 1 ๋ค์