#1550. 部落卫队

部落卫队

题目描述

  原始部落 byteland 中的居民们为了争夺有限的资源,经常发生冲突。几乎每个居民都有他的仇敌。部落酋长为了组织一支保卫部落的队伍,希望从部落的居民中选出最多的居民入伍,并保证队伍中任何 2 个人都不是仇敌。   给定 byteland 部落中居民间的仇敌关系,编程计算组成部落卫队的最佳方案。

输入输出格式

输入

  第一行 2 个正整数 nnmm,表示 nn 个人,mm 个仇敌关系,接下来 mm 行,每行 22 个正整数 uuvv,表示 uuvv 是仇敌(编号 1,2,...,n1,2,...,n)。

输出

  第一行是最多的人数,第二行是队伍的组成 XiX_i,0 表示第 ii 个人不入伍,11 表示入伍。(1<=n<=100, 0<=m<=5000)

样例

7 10
1 2
1 4
2 4
2 3
2 5
2 6
3 5
3 6
4 5
5 6
3
1 0 1 0 0 0 1