Notice
Recent Posts
Recent Comments
Link
나의 개발일지
[백준] 5557 1학년 [Python, 파이썬] 본문
- 문제 : https://www.acmicpc.net/problem/5557
- 🔑 DP
- dp 배열에 경우의 수를 저장
n = int(input())
num = list(map(int, input().split()))
dp = [[0] * 21 for _ in range(n)]
dp[0][num[0]] = 1
for i in range(1, n-1):
for j in range(0, 21):
if dp[i-1][j]:
if j + num[i] <= 20:
dp[i][j+num[i]] += dp[i-1][j]
if j - num[i] >= 0:
dp[i][j-num[i]] += dp[i-1][j]
print(dp[n-2][num[-1]])
'백준' 카테고리의 다른 글
[백준] 1655 가운데를 말해요 [Python, 파이썬] (1) | 2023.11.03 |
---|---|
[백준] 1238 파티 [Python, 파이썬] (1) | 2023.11.01 |
[백준] 24479 알고리즘 수업 - 깊이 우선 탐색 1 [Python, 파이썬] (1) | 2023.10.21 |
[백준] 11725 트리의 부모 찾기 [Python, 파이썬] (0) | 2023.10.21 |
[백준] 16118 달빛 여우 [Python, 파이썬] (1) | 2023.10.21 |
Comments