쓰고싶은거 써요
백준 10971 파이썬 외판원 순환2 본문
백준 링크:https://www.acmicpc.net/problem/10971
10971번: 외판원 순회 2
첫째 줄에 도시의 수 N이 주어진다. (2 ≤ N ≤ 10) 다음 N개의 줄에는 비용 행렬이 주어진다. 각 행렬의 성분은 1,000,000 이하의 양의 정수이며, 갈 수 없는 경우는 0이 주어진다. W[i][j]는 도시 i에서 j
www.acmicpc.net
DFS 브루트포스로 해결했음. PYPY로 제출함.
import sys
n=int(input())
s=[list(map(int,sys.stdin.readline().split())) for i in range(n)]
min_value = sys.maxsize
visited=[False for _ in range(n)]
def dfs(start,cur,cost):
global s, visited, min_value
if start == cur and visited.count(False) == 0:
min_value = min(min_value,cost)
for i in range(n):
if not s[cur][i] == 0 and not visited[i]:
visited[i] = True
dfs(start,i,cost+s[cur][i])
visited[i] = False
dfs(0,0,0)
print(min_value)
'백준 python 기록' 카테고리의 다른 글
백준 파이썬 2529 부등호 (0) | 2021.10.18 |
---|---|
백준 10816 숫자 카드 2 (0) | 2021.10.17 |
백준 10451 파이썬 순열 사이클 (0) | 2021.10.13 |
백준 파이썬 1780 종이의 개수 (0) | 2021.10.11 |
백준 파이썬 7562 나이트의 이동 (0) | 2021.09.25 |
Comments