GIL-Guilds(黑白灰染色)
\(这题真是扯谈!!!\)
\(灰色很高级是吧,但是题目没要你把颜色全部用上去啊!!!\)
\(黑色或者白色只有一个条件,但灰色需要和所有三种颜色都相邻。这么难搞,那我完全可以用黑或白代替灰色啊!\)
于是,转化为一个黑白染色系统
\(如果按照黑白相间染色的话,一定可以成功。不可以成功,说明那个点是孤立的。\)
\(于是,随便电风扇(dfs)一下就好了呀~\)
#include <bits/stdc++.h>
using namespace std;
const int maxn=1000009;
int n,m;
struct p{
int to,nxt;
}d[maxn];int head[maxn],cnt=1,color[maxn];
void add(int u,int v){
d[cnt].to=v,d[cnt].nxt=head[u],head[u]=cnt++;
}
void dfs(int now,int se)
{
for(int i=head[now];i;i=d[i].nxt)
{
int v=d[i].to;
if(color[v]==-1)//没有访问过
{
color[v]=se^1;
dfs(v,color[v]);
}
}
}
int in[maxn];
int main()
{
cin>>n>>m;
for(int i=1;i<=m;i++)
{
int l,r;
cin>>l>>r;
add(l,r),add(r,l);
in[l]++,in[r]++;
}
for(int i=1;i<=n;i++)
{
if(in[i]==0)
{
cout<<"NIE";
return 0;
}
}
memset(color,-1,sizeof(color));
for(int i=1;i<=n;i++)
{
if(color[i]==-1)
{
color[i]=1;
dfs(i,1);
}
}
cout<<"TAK"<<endl;
for(int i=1;i<=n;i++)
{
if(color[i]==1)
cout<<"K"<<endl;
else
cout<<"S"<<endl;
}
}
GIL-Guilds(黑白灰染色)的更多相关文章
- [POI2010] GIL-Guilds - 二分图染色,DFS
给一张无向图,要求你用黑白灰给点染色,且满足对于任意一个黑点,至少有一个白点和他相邻:对于任意一个白点,至少有一个黑点与他相邻,对于任意一个灰点,至少同时有一个黑点和白点和灰点与他相邻,问能否成功 S ...
- 洛谷 P3496 BZOJ 2079 [POI2010]GIL-Guilds
题目描述 King Byteasar faces a serious matter. Two competing trade organisations, The Tailors Guild and ...
- PS2018学习笔记(03-18节)
3-认识主界面 # 主界面包括: 菜单栏.选项栏.工具栏.面板.图像编辑窗口(中间)和状态栏(底部): # 界面设置: 方法1:Ctrl+k:打开界面设置; 方法2:编辑-首选项-界面 # shift ...
- [POI2010]GIL-Guilds(结论题)
题意 给一张无向图,要求你用黑白灰给点染色,且满足对于任意一个黑点,至少有一个白点和他相邻:对于任意一个白点,至少有一个黑点与他相邻,对于任意一个灰点,至少同时有一个黑点和白点和灰点与他相邻,问能否成 ...
- Axure原型制作规范
一. 名词定义: Sitemap 导航图 Widgets 组件 Master 库 Label 控件名 Interactions 交互动作 Annotations 注释 Location and siz ...
- 关于前端CSS预处理器Sass的小知识!
前面的话 "CSS预处理器"(css preprocessor)的基本思想是,用一种专门的编程语言,进行网页样式设计,然后再编译成正常的CSS文件.SASS是一种CSS的开发工 ...
- 软件工程day8
设计出一份demo.上报于组,等待修改意见. 色调为黑白灰,图像也很简洁,符合“快捷查询工具”的主题.
- 【Codeforces 707A】Brain's Photos 水题
黑白灰都是#Black&White #include <cstdio> int n,m; int main() { scanf("%d%d",&n,&a ...
- paper 107:图像的白平衡
所谓白平衡(White Balance):指在图像处理的过程中,对原本材质为白色的物体的图像进行色彩还原,去除外部光源色温的影响,使其在照片上也显示白色.也就是不管在任何光源下,都能将白色物体还原为白 ...
随机推荐
- AJ学IOS(19)UI之QQ好友列表
AJ分享,必须精品 先看效果图 哈哈,这次猫猫给来个动态的图片,这个看起来带劲 实现思路 首先建立模型 这里用到的是一个双层的模型. cell的实现 这里一看其实就知道是一个tableView,我们自 ...
- 杭电 How far away ?
There are n houses in the village and some bidirectional roads connecting them. Every day peole alwa ...
- selenium Webdriver多窗口切换
应用场景: 在页面操作过程中有时候点击某个链接会弹出新的窗口,这时候就需要主机切换到新打开的窗口上进行操作.WebDriver提供了switch_to.window()方法,可以实现在不同的窗口直接切 ...
- 架构师修炼之微服务部署 - Docker简介
Docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows 机器上,也可以实现虚拟化,容器是 ...
- 吃瓜的正确姿势,Python绘制罗志祥词云图
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 这篇文章中向大家介绍了Python绘制词云的方法,不难看出绘制词云可以说是一 ...
- SpringCloud(四)学习笔记之Feign
Feign是一个声明式的Web服务客户端,可帮助我们更加便捷.优雅地调用HTTP API Feign可以与Eureka和Ribbon组合使用以支持负载均衡 一.构建Eureka Server [基于第 ...
- df卡住的解决办法
在使用网络存储时,如果网络存储出问题.比如使用NFS,网络中断,df -h会卡住 情形一 ctrl+c是能取消中断的,这种情况算是比较幸运.使用mount查看有哪些挂载点,将其卸载即可. 情形二 ct ...
- Vsftp用户限制
背景 Oracle全库备份,异地备份 在实现异地备份后,由第三方人员登录服务器拉取dmp文件. 为了确保安全,创建一个特定ftp账号用于第三方人员使用 要求 1.可以登录服务器 2.可以拉取dmp文件 ...
- (第二篇)shell的简单了解
Shell (类似开发工具) Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁.Shell 既是一种命令语言,又是一种程序设计语言. Shell 是指一种应用程序,这个应用程 ...
- Asynchronous Disk I/O Appears as Synchronous on Windows
Summary File I/O on Microsoft Windows can be synchronous or asynchronous. The default behavior for I ...