24886-3 最小权顶点覆盖问题

2488   6-3 最小权顶点覆盖问题

题目描述

给定一个赋权无向图G=(V,E),每个顶点v∈V都有一个权值w(v)。如果UÍV,且对任意(u,v)∈E 有u∈U 或v∈U,就称U 为图G 的一个顶点覆盖。G 的最小权顶点覆盖是指G中所含顶点权之和最小的顶点覆盖。

对于给定的无向图G,设计一个优先队列式分支限界法,计算G的最小权顶点覆盖。

输入格式:

输入数据。第1 行有2 个正整数n 和m,表示给定的图G 有n 个顶点和m条边,顶点编号为1,2,…,n。第2 行有n个正整数表示n个顶点的权。接下来的m行中,每行有2 个正整数u,v,表示图G 的一条边(u,v)。

输出格式:

将计算出的最小权顶点覆盖的顶点权之和以及最优解输出,第 1 行是最小权顶点覆盖顶点权之和;文件第 2 行是最优解x i ,1<= i<=n ,  xi =0 表示顶点i
不在最小权顶点覆盖中,  xi =1 表示顶点i在最小权顶点覆盖中。

输入样例 复制
7 7
1 100 1 1 1 100 10
1 6
2 4
2 5
3 6
4 5
4 6
6 7
输出样例 复制
13
1 0 1 1 0 0 1

说明

按照题目要求用优先队列式分支限界法解题

0
2
通过提交
时空限制1000ms/128mb
题目来源
评测方式在线评测
题目类型
难        度