CF1354E.Graph Coloring

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

You are given an undirected graph without self-loops or multiple edges which consists of nn vertices and mm edges. Also you are given three integers n1n_1 , n2n_2 and n3n_3 .

Can you label each vertex with one of three numbers 1, 2 or 3 in such way, that:

  1. Each vertex should be labeled by exactly one number 1, 2 or 3;
  2. The total number of vertices with label 1 should be equal to n1n_1 ;
  3. The total number of vertices with label 2 should be equal to n2n_2 ;
  4. The total number of vertices with label 3 should be equal to n3n_3 ;
  5. colucolv=1|col_u - col_v| = 1 for each edge (u,v)(u, v) , where colxcol_x is the label of vertex xx .

If there are multiple valid labelings, print any of them.

输入格式

The first line contains two integers nn and mm ( 1n50001 \le n \le 5000 ; 0m1050 \le m \le 10^5 ) — the number of vertices and edges in the graph.

The second line contains three integers n1n_1 , n2n_2 and n3n_3 ( 0n1,n2,n3n0 \le n_1, n_2, n_3 \le n ) — the number of labels 1, 2 and 3, respectively. It's guaranteed that n1+n2+n3=nn_1 + n_2 + n_3 = n .

Next mm lines contan description of edges: the ii -th line contains two integers uiu_i , viv_i ( 1ui,vin1 \le u_i, v_i \le n ; uiviu_i \neq v_i ) — the vertices the ii -th edge connects. It's guaranteed that the graph doesn't contain self-loops or multiple edges.

输出格式

If valid labeling exists then print "YES" (without quotes) in the first line. In the second line print string of length nn consisting of 1, 2 and 3. The ii -th letter should be equal to the label of the ii -th vertex.

If there is no valid labeling, print "NO" (without quotes).

输入输出样例

  • 输入#1

    6 3
    2 2 2
    3 1
    5 4
    2 5

    输出#1

    YES
    112323
  • 输入#2

    5 9
    0 2 3
    1 2
    1 3
    1 5
    2 3
    2 4
    2 5
    3 4
    3 5
    4 5

    输出#2

    NO
首页