728x90
---문제---
- [파이썬 S/W 문제해결 구현]2일차 - 전자카트
---코드---
def dfs(j):
global sub_result, result, n
if len(visited) == n:
sub_result+=number[j][0]
if(result<sub_result):
sub_result-=number[j][0]
return
if result < sub_result:
return
elif len(visited) == n :
result = sub_result
sub_result-=number[j][0]
return
for i in range(1,n):
if i not in visited:
visited.append(i)
sub_result += number[j][i]
dfs(i)
visited.remove(i)
sub_result -= number[j][i]
T = int(input())
# 여러개의 테스트 케이스가 주어지므로, 각각을 처리합니다.
for test_case in range(1, T + 1):
n = int(input())
number = [list(map(int,input().split())) for _ in range(n)]
visited = [0]
sub_result , result = 0, 9876521
for d in range(1,n):
sub_result += number[0][d]
visited.append(d)
dfs(d)
visited.remove(d)
sub_result -= number[0][d]
print('#%d %d'%(test_case,result))
---출처---
https://swexpertacademy.com/main/solvingProblem/solvingProblem.do
문제의 저작권은 SW Expert Academy에 있습니다.
반응형
'Algorithms > SW Expert Academy' 카테고리의 다른 글
[Java] SW Expert Academy 1491번 문제 (탐색) (0) | 2020.01.05 |
---|---|
[Java] SW Expert Academy, SW 상시 역량테스트 모의 테스트 1767번 문제 (완전 탐색, DFS, 깊이 우선 탐색) (0) | 2020.01.05 |
[Java] SW Expert Academy 1486번 문제 (완전 탐색, DFS, 깊이 우선 탐색) (0) | 2020.01.02 |
[Java] SW Expert Academy 5658번 문제 (문자열) (0) | 2020.01.02 |
[Python] SW Expert Academy 5188번 문제 (완전탐색, DFS) (4) | 2020.01.01 |