강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

IJILKJ님의 프로필 이미지
IJILKJ

작성한 질문수

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

5. 바둑이 승차-Cut Edge Tech

5번 케이스만 문제가있는데요

작성

·

193

0

코드를 아래와 같이 짰고 테스트결과 123은 클리어, 4번은 시간초과가 나지만 답은 맞고 5번케이스는 무한루프에 빠지는것처럼 보이는데 이유를 도저히 모르겠습니다.

컷팅하기전 코드인데 시간이 엄청 많이 걸려서 그러는건가요 아님 코드에 문제가 있는건가요??

def dfs(idx, sum_w):
    global largest_w
    if sum_w > c:
        return
    elif sum_w > largest_w:
        largest_w = sum_w

    if idx == n:
        return

    dfs(idx+1, sum_w+puppies[idx])
    dfs(idx+1, sum_w)


c, n = map(int, input().split())
puppies = []
for _ in range(n):
    puppies.append(int(input()))

largest_w = 0
dfs(0, 0)
print(largest_w)

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

if idx==n: 

    return

코드가 있어 무한루프에 빠지지는 않습니다. 계산량이 너무 많아서 그렇습니다. 컷에지 하세요.

IJILKJ님의 프로필 이미지
IJILKJ

작성한 질문수

질문하기