TSP.旅行商问题

传统题 时间 3000 ms 内存 256 MiB 8 尝试 18 已通过 6 标签

旅行商问题

题目描述

nn 座城市,编号为 11nn。任意两座不同城市 i,ji,j 之间都存在一条从 iijj 的单向道路,通行费用为 ci,jc_{i,j}。 一名旅行商从 11 号城市出发,需要恰好访问每座城市一次,最后回到 11 号城市。 注意,ci,jc_{i,j}cj,ic_{j,i} 不一定相等。

请求出完成这次旅行的最小总费用。

输入格式

第一行输入一个整数 nn,表示城市数量。

接下来 nn 行,每行 nn 个整数。第 ii 行第 jj 个整数为 ci,jc_{i,j},表示从 ii 号城市到 jj 号城市的通行费用。

保证 ci,i=0c_{i,i}=0,且当 iji\ne j1ci,j1091\le c_{i,j}\le10^9

输出格式

输出一个整数,表示最小总费用。

样例

样例 1

输入:

4
0 10 15 20
5 0 9 10
6 13 0 12
8 8 9 0

输出:

35

数据范围

2n182\le n\le18

在线编程 IDE

建议全屏模式获得最佳体验