CF1354E.Graph Coloring
提高+/省选-
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given an undirected graph without self-loops or multiple edges which consists of n vertices and m edges. Also you are given three integers n1, n2 and n3.
Can you label each vertex with one of three numbers 1, 2 or 3 in such way, that:
- Each vertex should be labeled by exactly one number 1, 2 or 3;
- The total number of vertices with label 1 should be equal to n1;
- The total number of vertices with label 2 should be equal to n2;
- The total number of vertices with label 3 should be equal to n3;
- ∣colu−colv∣=1 for each edge (u,v), where colx is the label of vertex x.
If there are multiple valid labelings, print any of them.
给你一个无向图,该图不含自环和重边,共有 n 个顶点和 m 条边。同时,你还给定三个整数 n1、n2 和 n3。
你能否为每个顶点标上三个数字之一(即 1、2 或 3),使得满足以下条件:
- 每个顶点必须且仅能被赋予一个数字 1、2 或 3;
- 标号为 1 的顶点总数恰好为 n1;
- 标号为 2 的顶点总数恰好为 n2;
- 标号为 3 的顶点总数恰好为 n3;
- 对于每条边 (u,v),均有 ∣colu−colv∣=1,其中 colx 表示顶点 x 的标号。
若存在多种合法的标号方案,请输出任意一种。
输入格式
The first line contains two integers n and m (1≤n≤5000; 0≤m≤105) — the number of vertices and edges in the graph.
The second line contains three integers n1, n2 and n3 (0≤n1,n2,n3≤n) — the number of labels 1, 2 and 3, respectively. It's guaranteed that n1+n2+n3=n.
Next m lines contan description of edges: the i-th line contains two integers ui, vi (1≤ui,vi≤n; ui=vi) — the vertices the i-th edge connects. It's guaranteed that the graph doesn't contain self-loops or multiple edges.
第一行包含两个整数 n 和 m(1≤n≤5000;0≤m≤105)—— 分别表示图中的顶点数和边数。
第二行包含三个整数 n1、n2 和 n3(0≤n1,n2,n3≤n)—— 分别表示标签为 1、2 和 3 的顶点数量。保证 n1+n2+n3=n。
接下来的 m 行描述图中的边:第 i 行包含两个整数 ui、vi(1≤ui,vi≤n;ui=vi)—— 表示第 i 条边所连接的两个顶点。保证图中不含自环或重边。
输出格式
If valid labeling exists then print "YES" (without quotes) in the first line. In the second line print string of length n consisting of 1, 2 and 3. The i-th letter should be equal to the label of the i-th vertex.
If there is no valid labeling, print "NO" (without quotes).
如果存在有效的标号方案,则在第一行输出 "YES"(不带引号)。在第二行输出一个长度为 n 的字符串,该字符串仅由字符 1、2 和 3 组成。其中第 i 个字符应等于第 i 个顶点的标号。
如果不存在有效的标号方案,则输出 "NO"(不带引号)。
输入输出样例
输入#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
输入解题思路,AI测评打分。不知道怎么写?