#BZOJ2400. Spoj 839 Optimal Marks

Spoj 839 Optimal Marks

题目描述

定义无向图中的一条边的值为:这条边连接的两个点的值的异或值。 定义一个无向图的值为:这个无向图所有边的值的和。 给你一个有n个结点m条边的无向图。其中的一些点的值是给定的,而其余的点的值由你决定(但要求均为非负数),使得这个无向图的值最小。在无向图的值最小的前提下,使得无向图中所有点的值的和最小。

输入格式

第一行,两个数n,m,表示图的点数和边数。 接下来n行,每行一个数,按编号给出每个点的值(若为负数则表示这个点的值由你决定,值的绝对值大小不超过10^9)。 接下来m行,每行二个数a,b,表示编号为a与b的两点间连一条边。(保证无重边与自环。)

输出格式

第一行,一个数,表示无向图的值。     第二行,一个数,表示无向图中所有点的值的和。

    3 2
    2
    -1
    0
    1 2
    2 3


    2
    2


f提示 数据约定   n<=500,m<=2000   样例解释     2结点的值定为0即可。

Source