DFS 함수 탈출
498
kimcola
작성한 질문수 3
0
안녕하세요 선생님 강의 열심히 듣고 있는 학생입니다 !
강의 듣고 나서 복습하다가 아래와 같이 풀었는데요.
이 경우에 sum과 total-sum 조건을 비교하는 부분을 한 번만 통과하면 바로 DFS함수를 끝내는 방법이 있을까요?
return을 해도 계속 통과를 해서 질문 드립니다 ! 감사합니다.
def DFS(L, sum):
global answer
if L==len(nums):
if sum == total-sum:
answer = "YES"
else:
DFS(L+1, sum+nums[L])
DFS(L+1, sum)
if __name__ == "__main__":
n = int(input())
nums = list(map(int, input().split()))
answer = "NO"
total = sum(nums)
DFS(0, 0)
print(answer)
답변 1
0
안녕하세요^^
신호변수를 하나 두고 답을 구하면 그 다음 호출들은 호줄되자마자 바로 종료하면 됩니다.
def DFS(L, sum):
global answer, flag
if flag:
return
if L==len(nums):
if sum == total-sum:
answer = "YES"
flag = True
else:
DFS(L+1, sum+nums[L])
DFS(L+1, sum)
if __name__ == "__main__":
n = int(input())
flag = False
nums = list(map(int, input().split()))
answer = "NO"
total = sum(nums)
DFS(0, 0)
print(answer)
기존에 윈도우 10으로 잘 써왔는데 윈도우 11로 바꾸고 나서 채점이 안됩니다.
1
104
2
스택에서 ')'을 만나는 경우
0
111
3
문제가 어디있나요?
0
86
2
변수 or 함수명
0
81
1
침몰하는 타이타닉 문제 질문입니다
0
71
1
AA.py 책점 에러
0
65
1
오늘 구매했는데 파이썬 자료구조 궁금한거 있으면 답변이 잘 될까요.
0
117
2
5.동전분배하기 문제 밑에코드도 정답이될까요?
0
118
1
아나그램 비교 코드
0
124
2
AA.PY파일 복사 후 채점 진행할때 오류 발생합니다.
0
164
2
문제 링크가있나여?
0
155
2
채점기 Time Limit Exceeded 오류 문의
1
182
2
동적계획법은 사용하는 문제
0
135
2
제 코드 좀 봐주세요
0
154
1
예외가 존재할 가능성?
0
100
1
3번이 안풀립니다
0
98
0
5번 틀림
0
125
0
오류원인?
0
106
0
리스트 선언
0
116
1
침몰하는 타이타닉(그리디) 문제 질문
0
115
1
알고리즘
0
74
1
코딩테스트
0
98
1
DFS 순서 질문드립니다.
0
139
2
left, right를 사용한 풀이법에 대한 질문입니다
0
101
1





