-
카테고리
-
세부 분야
알고리즘 · 자료구조
-
해결 여부
미해결
휴가 DFS 문제 질문
23.01.07 22:02 작성 조회수 287
0
def DFS(L, sum):
global res
if L == n+1:
if res < sum:
res = sum
else:
# 상담을 한다고 했을떄 L번쨰 상담을 한다고 했을떄
if L + T[L] <= n+1:
DFS(T[L]+L, sum + P[L])
DFS(L+1, sum)
if __name__ == "__main__":
n = int(input())
T = list()
P = list()
for i in range(n):
a, b = map(int, input().split())
T.append(a)
P.append(b)
res = -2147000000
T.insert(0, 0)
P.insert(0, 0)
DFS(1, 0)
print(res)
제가 구현할떄 else 문에 if L + T[L] <= n+1: 이라는 코드를 작성하지 않아도 정상적으로 코드가 실행했습니다. 이 if 문 같은 경우에는 위의 else 문에서 다 해결해주는 부분이 아닌가 싶어서 저는 작성하지 않았습니다. 혹시 if L != n+1 하고 if L + T[L] <= n+1: 하고 다른게 있을까요?
답변을 작성해보세요.
0
답변 1