-
Notifications
You must be signed in to change notification settings - Fork 5
Expand file tree
/
Copy pathBCTSP2-src.cpp
More file actions
56 lines (44 loc) · 777 Bytes
/
BCTSP2-src.cpp
File metadata and controls
56 lines (44 loc) · 777 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
#include <bits/stdc++.h>
#define ll long long
#define FOR(i, a, b) for (ll i = a; i <= b; i++)
#define FORD(i, a, b) for (ll i = a; i >= b; i--)
#define FILEIN freopen("in.txt", "r", stdin)
#define fi first
#define se second
using namespace std;
const ll MAX = 1010;
const ll INF = 1e9 + 7;
ll n, res, c[MAX][MAX], cx[MAX];
void process(){
FOR(i, 1, n) cx[i] = 1;
res = 0;
int d = 1;
cx[1] = 0;
int u = 1;
while (d != n){
ll cmin = INF;
ll iv;
FOR(v, 1, n){
if (cx[v] && c[u][v]){
if (c[u][v] < cmin){
cmin = c[u][v];
iv = v;
}
}
}
res += c[u][iv];
cx[iv] = false;
u = iv;
d++;
}
res += c[u][1];
}
int main(){
// FILEIN;
cin >> n;
FOR(i, 1, n){
FOR(j, 1, n) cin >> c[i][j];
}
process();
cout << res;
}