인프런 커뮤니티 질문&답변
오류 이유를 모르겠어요
작성
·
168
0
해설을 먼저 보지 않고 풀었는데 어디서 오류가 나는지 모르겠습니다.
n, m = map(int, input().split())
dy = [0] * (m + 1)
res = 0
for i in range(n):
a, b = map(int, input().split())
ch = [0] * (m + 1)
dy[b] = a
ch[b] = 1
if a > res:
res = a
for j in range(1, m + 1):
if j != b and dy[j] != 0:
if j + b < m + 1 and ch[j + b] == 0:
dy[j + b] = max(dy[j + b], dy[j] + a)
ch[j + b] = 1
if dy[j + b] > res:
res = dy[j + b]
print(res)답변 1
0
김태원
지식공유자
안녕하세요^^
제가 드린 정답코드를 분석해보세요.
위에 코드는 올바른 방향의 코드는 아닌것 같습니다. 정답코드와 본인코드를 비교분석해 보시는 것도 좋은 공부가 될 겁니다.





