团体程序设计天梯赛L2-023 图着色问题
L2-023. 图着色问题
图着色问题是一个著名的NP完全问题。给定无向图 G = (V, E),问可否用K种颜色为V中的每一个顶点分配一种颜色,使得不会有两个相邻顶点具有同一种颜色?
但本题并不是要你解决这个着色问题,而是对给定的一种颜色分配,请你判断这是否是图着色问题的一个解。
输入格式:
输入在第一行给出3个整数V(0 < V <= 500)、E(>= 0)和K(0 < K <= V),分别是无向图的顶点数、边数、以及颜色数。顶点和颜色都从1到V编号。随后E行,每行给出一条边的两个端点的编号。在图的信息给出之后,给出了一个正整数N(<= 20),是待检查的颜色分配方案的个数。随后N行,每行顺次给出V个顶点的颜色(第i个数字表示第i个顶点的颜色),数字间以空格分隔。题目保证给定的无向图是合法的(即不存在自回路和重边)。
输出格式:
对每种颜色分配方案,如果是图着色问题的一个解则输出“Yes”,否则输出“No”,每句占一行。
输入样例:
6 8 3 2 1 1 3 4 6 2 5 2 4 5 4 5 6 3 6 4 1 2 3 3 1 2 4 5 6 6 4 5 1 2 3 4 5 6 2 3 4 2 3 4
输出样例:
Yes Yes No No
注意:颜色必须是k种
#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <algorithm>
#include <cmath>
#include <map>
#include <set>
#include <stack>
#include <queue>
#include <vector>
#include <bitset>using namespace std;#define LL long long
const int INF = 0x3f3f3f3f;int n, m, k;
int u[250090], v[250090];
int visit[505],a[505];int main()
{while (~scanf("%d%d%d", &n, &m, &k)){for (int i = 1; i <= m; i++) scanf("%d%d", &u[i], &v[i]);int q;scanf("%d", &q);while (q--){memset(visit, 0, sizeof visit);int cnt = 0, flag = 1;for (int i = 1; i <= n; i++){scanf("%d", &a[i]);if (visit[a[i]]) continue;visit[a[i]] = 1, cnt++;}if (cnt != k) { printf("No\n"); continue; }for (int i = 1; i <= m; i++)if (a[u[i]] == a[v[i]]) flag = 0;if (flag) printf("Yes\n");else printf("No\n");}}return 0;
}
团体程序设计天梯赛L2-023 图着色问题相关推荐
- 团体程序设计天梯赛-L2组
团体程序设计天梯赛-L2组 -------------------------------------------------------------------------------- 题目传送门 ...
- 团体程序设计天梯赛 L2 题目合集
前言 发现自己还能再参加一次天梯赛,在高兴之余,决定把在赛前将所有的天梯赛真题过一遍,希望自己可以取得理想的成绩.目前 L1 的题目已经刷完,打算在赛前刷完 L2 的题目. 本来想 L2 的题目都写个 ...
- L2-013. 红色警报-PAT团体程序设计天梯赛GPLT(图的连通分量个数统计)
战争中保持各个城市间的连通性非常重要.本题要求你编写一个报警程序,当失去一个城市导致国家被分裂为多个无法连通的区域时,就发出红色警报.注意:若该国本来就不完全连通,是分裂的k个区域,而失去一个城市并不 ...
- 【CCCC】PAT : 团体程序设计天梯赛-练习集 L2 答案,题解,附代码
[CCCC]PAT : 团体程序设计天梯赛-练习集 L2 答案 鉴定完毕,全部水题 ヾ(•ω•`)o 知识点分类(32): 1.树锯结构(9):二叉树的存储,编号,遍历顺序转换,求深度,底层节点,从底 ...
- 2021年团体程序设计天梯赛-总决赛L2题解
2021年团体程序设计天梯赛-总决赛! L2-1 包装机 思路:模拟 代码: #include<bits/stdc++.h> using namespace std; int main() ...
- PTA|团体程序设计天梯赛-练习题库集
文章目录 关于爬取脚本的编写 L1-001 Hello World! (5 分) L1-002 打印沙漏 (15 分) L1-003 个位数统计 (15 分) L1-004 计算摄氏温度 (5 分) ...
- 2018团体程序设计天梯赛 软件学院选拔赛
2018团体程序设计天梯赛 软件学院选拔赛 被你们虐了一下午的OJ是很辛苦的,让我们来看看题解吧. L1-01 微妙的平衡 题目描述: 平衡是一种很微妙的状态.施加在一个物体上各种力,在什么情况下会使 ...
- L2-001 紧急救援-团体程序设计天梯赛GPLT
题目来源:团体程序设计天梯赛-练习集 题目地址:L2-001 紧急救援 题目描述 题目大意 题目给出一张图,其中包括道路连接的城市和它们的距离,以及每个城市救援队的数量,最后求从出发地城市到目的地城市 ...
- 计算机能力挑战赛_蓝桥杯、PAT、CCF CSP、团体程序设计天梯赛、传智杯、计算机能力挑战赛、软考等大学生编程比赛/考试介绍...
介绍7个适合普通大学生参加的编程比赛/考试(注:有的比赛如蓝桥杯有多种赛别,本文仅介绍其中的程序设计/编程比赛). 编程入门书籍推荐<算法笔记>,内容详细易懂,对新手非常友好,描述语言为C ...
- ptaa乘以b_PTA|团体程序设计天梯赛-练习题目题解锦集(C/C++)(持续更新中……)...
C++ CPP C++语言开发 PTA|团体程序设计天梯赛-练习题目题解锦集(C/C++)(持续更新中--) PTA|团体程序设计天梯赛-练习题目题解锦集(持续更新中) 实现语言:C/C++: ...
最新文章
- 售价910元!周志华等人英文新书《演化学习》出炉!
- android应用程序的组成部分
- JSP简单练习-JSP动作指令
- Docker最全教程之Go实战,墙裂推荐(十九)
- Codeforces Round #720 (Div. 2) C. Nastia and a Hidden Permutation 交互
- 559. N 叉树的最大深度
- OpenCV3学习(2.1)——图像Mat数据的访问-at/ptr/iterator
- jQuery导航菜单防刷新
- C++ explicit关键字详解(用于构造函数)
- 转换pfb/pfm字体格式为otf
- matlab啁啾信号,啁啾信号chirp(扫频余弦信号)
- 游戏后台管理工具帮助文档
- python 书签内容整理
- clustalw序列比对_Clustal的使用总结(Clustalx+Clustalw)
- java是先学前端还是后端_我应该学前端还是后端?
- APP设计说明书概述
- mysql怎么删除临时表里的数据_MySQL如何创建和删除临时表 | 学步园
- 计算机基础知识 图文,关于电脑基础知识学习【图文详解】
- Yar 搭建 RPC 服务
- php如何除去图片水印,如何去掉图片水印,一键去除文字logo图片水印更简单