| ์ผ | ์ | ํ | ์ | ๋ชฉ | ๊ธ | ํ |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
- DFS
- ๋ฐฑ์ค
- javascript
- ๋ค์ด๋๋ฏนํ๋ก๊ทธ๋๋ฐ
- ์ฝํ
- ์ธํผ
- SSAFY
- ์๋ฃ๊ตฌ์กฐ
- ์คํ
- SWEA
- ๊ทธ๋ํ
- DP
- kakao
- ํํ
- Backjoon
- ํ๋ก๊ทธ๋๋จธ์ค
- boj
- ์๊ณ ๋ฆฌ์ฆ
- Blind
- ์ฝ๋ฉํ ์คํธ
- ์ผ์ฑ
- ํ์ด์ฌ
- ์๋ฐ์คํฌ๋ฆฝํธ
- sort
- ์์ ํ์
- Python
- BFS
- SW์ญ๋ํ ์คํธ
- ์นด์นด์ค
- algorithm
- Today
- Total
๋ง์ํ
[python] ๋ฐฑ์ค - 12865. ํ๋ฒํ ๋ฐฐ๋ญ ๋ณธ๋ฌธ

๐ค๋ฌธ์ ํด๊ฒฐ
-
G5 | DP, ๋ ์ ์๊ณ ๋ฆฌ์ฆ(๋ฐฐ๋ญ ์๊ณ ๋ฆฌ์ฆ)
๋ฑ ๋ด๋ ๋๋ฌด ๋ณต์กํด ๋ณด์ด๋ DP... 2์ฐจ์ ๋ฐฐ์ด๋ก ํ์ด์ผํ ๊ฒ ๊ฐ๋ค.
ํ์ ๊ฐ ์์ดํ , ์ด์ ํ์ฌ ๋ฌด๊ฒ(?)
- ์์ดํ ํ๋๋ฅผ ๊ณ ๋ฅธ๋ค.
- ๊ฐ๋ฐฉ์ ๋ฒํธ ์ ์๋ ๋ฌด๊ฒ๋ฅผ 0๋ถํฐ M๊น์ง ์ฌ๋ ค๋ณธ๋ค.
- ํด๋น ๋ฌด๊ฒ๋ณ๋ก ์ต๋๋ก ์ฑ์ธ ์ ์๋ ๊ฐ์ฅ ํฐ ๊ฐ์ ์ฑ์ด๋ค.
์ฌ์ค ๊ทธ๋ ๊ฒ ๋ฑ!!! ์์ ํ ์ดํด๋ ํ์ง ๋ชปํ๋ค... ์ญ์ DP๋ ์ด๋ ค์
๋์ค์ ๋น์ทํ ๋ฌธ์ ๋ฅผ ํ๋ฒ ๋ ํ๋ฉด ์ดํด๊ฐ ๊ฐ์ง ์์๊น...
๐ป์์ค ์ฝ๋
import sys
input = sys.stdin.readline
N, M = map(int, input().split()) # ๋ฌผํ ์, ์ต๋ ๋ฌด๊ฒ
items = [tuple(map(int, input().split())) for _ in range(N)]
# print(items)
dp = [[0] * (M + 1) for _ in range(N + 1)]
# for row in dp:
# print(row)
# print()
for item_idx in range(1, N + 1):
for weight in range(1, M + 1):
item_weight, item_value = items[item_idx - 1]
# ๊ณ์ฐ๋จ๊ณ์ ๋ฌด๊ฒ๊ฐ ๋ฌผ๊ฑด์ ๋ฌด๊ฒ๋ณด๋ค ์์์ ์์ง ํด๋น ๋จ๊ณ์ ๋ฌผ๊ฑด์ ๋ชป๋ฃ์
if weight < item_weight:
dp[item_idx][weight] = dp[item_idx - 1][weight]
else:
dp[item_idx][weight] = max(dp[item_idx - 1][weight], dp[item_idx - 1][weight - item_weight] + item_value)
# for row in dp:
# print(row)
# print()
print(dp[-1][-1])
๐๋ฌธ์ ํ์ธ
์ถ์ฒ: BACKJOON ONLINE JUDGE
๋งํฌ: https://www.acmicpc.net/problem/12865
12865๋ฒ: ํ๋ฒํ ๋ฐฐ๋ญ
์ฒซ ์ค์ ๋ฌผํ์ ์ N(1 โค N โค 100)๊ณผ ์ค์๊ฐ ๋ฒํธ ์ ์๋ ๋ฌด๊ฒ K(1 โค K โค 100,000)๊ฐ ์ฃผ์ด์ง๋ค. ๋ ๋ฒ์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์ ๊ฑฐ์ณ ๊ฐ ๋ฌผ๊ฑด์ ๋ฌด๊ฒ W(1 โค W โค 100,000)์ ํด๋น ๋ฌผ๊ฑด์ ๊ฐ์น V(0 โค V โค 1,000)
www.acmicpc.net
'Algorithm Problem > Python' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [python] ๋ฐฑ์ค - 1012. ์ ๊ธฐ๋ ๋ฐฐ์ถ (0) | 2020.10.31 |
|---|---|
| [python] ๋ฐฑ์ค - 14719. ๋น๋ฌผ (0) | 2020.10.30 |
| [python] ๋ฐฑ์ค - 1325. ํจ์จ์ ์ธ ํดํน (0) | 2020.10.28 |
| [python] ๋ฐฑ์ค - 10773. ๊ดํธ (0) | 2020.10.27 |
| [python] ๋ฐฑ์ค - 2512. ์์ฐ (0) | 2020.10.26 |