COI '12 #4 Spijuni
View as PDFYou are M, the head of the intelligence agency which employs  spies with codenames from 
 to 
.
Each of the spies has been assigned a different country and obtained an important piece of information
there. Your task is the following:
- Organize meetings between some of the spies. In each meeting, exactly two spies meet and exchange all information that they have obtained themselves or learned from other spies in previous meetings. Organizing a top-secret meeting between two spies in different countries is difficult, so each potential meeting has a price.
 - After all the meetings have concluded, select a subset of spies and send them together on the
world-saving (and woman-romancing) assignment. Sending a spy 
on the assignment costs
. For the assignment to succeed, it is important that the spies together know all the information obtained by the remaining spies.
 
Find the minimum total price of preparing and executing this assignment.
Input Specification
The first line of input contains the positive integer , the number of spies 
.
Each of the following  lines contains 
 positive integers not exceeding 
. The number in row 
and column 
 represents the price of a meeting between spies 
 and 
 and, of course, equals the
number in row 
 and column 
 (for 
 the number will be 
).
The following line contains  positive integers 
 
, the prices of sending each spy on
the assignment, in order for spies 
.
Output Specification
The first and only line of output must contain the required minimum total price.
Scoring
In test data with , which is worth a total of 
 points, it will be optimal to send at most four
spies on the assignment.
In test data worth a total of  points, all prices of sending spies on assignment are equal.
Sample Input 1
3
0 6 9
6 0 4
9 4 0
7 7 7
Sample Output 1
17
Explanation for Sample Output 1
We will organize meetings between spies  and 
, then 
 and 
, and send spy 
 on the assignment.
Sample Input 2
3
0 17 20
17 0 10
20 10 0
15 9 12
Sample Output 2
34
Explanation for Sample Output 2
We will organize a meeting between spies  and 
, and send spies 
 and 
 on the assignment.
Sample Input 3
5
0 3 12 15 11
3 0 14 3 20
12 14 0 11 7
15 3 11 0 15
11 20 7 15 0
5 10 10 10 10
Sample Output 3
28
Explanation for Sample Output 3
We will organize meetings between spies  and 
, then 
 and 
,
then 
 and 
, and send spies 
 and 
 (or 
 and 
) on the assignment.
Comments