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

dldmswo1217님의 프로필 이미지
dldmswo1217

작성한 질문수

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

5. 동전분배하기(DFS)

이렇게 해도 괜찮은건가요?

작성

·

247

0

def DFS(L,a,b,c):
    global res
    if L==n:
        if a==b or a==c or b==c:
          return
        v1=max(a,b,c)
        v2=min(a,b,c)
        res = min(res, v1-v2)
        return
        
    DFS(L+1,a+p[L],b,c)
    DFS(L+1,a,b+p[L],c)
    DFS(L+1,a,b,c+p[L])

n=int(input())
p=[ int(input()) for _ in range(n) ]
res=2147000000
DFS(0,0,0,0)
print(res)

강사님과 동일한 접근 방법으로 상태트리를 그려보고 코드를 작성했는데, 이 방법도 강사님 코드와 시간 효율면에서 동일한 성능을 갖나요?

 

답변 1

0

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

안녕하세요^^

네. 동일한 코드로 생각됩니다.

dldmswo1217님의 프로필 이미지
dldmswo1217

작성한 질문수

질문하기