CF1228D.Complete Tripartite
普及/提高-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You have a simple undirected graph consisting of n vertices and m edges. The graph doesn't contain self-loops, there is at most one edge between a pair of vertices. The given graph can be disconnected.
Let's make a definition.
Let v1 and v2 be two some nonempty subsets of vertices that do not intersect. Let f(v1,v2) be true if and only if all the conditions are satisfied:
- There are no edges with both endpoints in vertex set v1 .
- There are no edges with both endpoints in vertex set v2 .
- For every two vertices x and y such that x is in v1 and y is in v2 , there is an edge between x and y .
Create three vertex sets ( v1 , v2 , v3 ) which satisfy the conditions below;
- All vertex sets should not be empty.
- Each vertex should be assigned to only one vertex set.
- f(v1,v2) , f(v2,v3) , f(v3,v1) are all true.
Is it possible to create such three vertex sets? If it's possible, print matching vertex set for each vertex.
输入格式
The first line contains two integers n and m ( 3≤n≤105 , 0≤m≤min(3⋅105,2n(n−1)) ) — the number of vertices and edges in the graph.
The i -th of the next m lines contains two integers ai and bi ( 1≤ai<bi≤n ) — it means there is an edge between ai and bi . The graph doesn't contain self-loops, there is at most one edge between a pair of vertices. The given graph can be disconnected.
输出格式
If the answer exists, print n integers. i -th integer means the vertex set number (from 1 to 3 ) of i -th vertex. Otherwise, print −1 .
If there are multiple answers, print any.
输入输出样例
输入#1
6 11 1 2 1 3 1 4 1 5 1 6 2 4 2 5 2 6 3 4 3 5 3 6
输出#1
1 2 2 3 3 3
输入#2
4 6 1 2 1 3 1 4 2 3 2 4 3 4
输出#2
-1
说明/提示
In the first example, if v1={1} , v2={2,3} , and v3={4,5,6} then vertex sets will satisfy all conditions. But you can assign vertices to vertex sets in a different way; Other answers like "2 3 3 1 1 1" will be accepted as well.
In the second example, it's impossible to make such vertex sets.