Codeforces Round #383 (Div. 1) C(二分图)
一道很巧妙的二分图的题目
简单分析性质可知,一个合法序列一定是由12,21这样的子串构成的,所以相邻的每隔2个两两配对
然后BF和GF互相配对,思考一下,如果存在奇环,那么必定有一个BG有两个GF,或者一个GF有两个BF,所以不存在这种情况,一定有解
直接二分图判断即可
#include <iostream> #include <cstdio> #include <vector> #define mp make_pair #define fi first #define se second using namespace std; const int maxn = 200050; vector<int> G[maxn]; int color[maxn]; vector <pair <int, int>> Q; void dfs(int x) {for(auto to : G[x]){if(!color[to]){color[to] = color[x] == 1 ? 2 : 1;dfs(to);}} } int n, x, y; int main() {scanf("%d", &n);for(int i = 0; i < n; i++){scanf("%d %d", &x, &y); x--; y--;G[x].push_back(y); G[y].push_back(x);Q.push_back(mp(x, y));}for(int i = 0; i < n; i ++)G[2*i].push_back(2*i+1), G[2*i+1].push_back(2*i);for(int i = 0; i < 2*n; i++)if(!color[i]) { color[i] = 1; dfs(i); }for(auto x : Q) printf("%d %d\n", color[x.fi], color[x.se]); }
转载于:https://www.cnblogs.com/Saurus/p/6434529.html
Codeforces Round #383 (Div. 1) C(二分图)相关推荐
- Codeforces Codeforces Round #383 (Div. 2) E (DFS染色)
题目链接:http://codeforces.com/contest/742/problem/E 题意: 有一个环形的桌子,一共有n对情侣,2n个人,一共有两种菜. 现在让你输出一种方案,满足以下要求 ...
- Codeforces Round #383 Div.2 A-E 题解
A B C D E 这场题目不难,但是很有意思. A 求1378^n的个位数. 特判n=0n=0n=0的情况即可. int d[]={6,8,4,2}; int main(){ int n=read( ...
- Codeforces Round #383 (Div. 2) D. Arpa's weak amphitheater and Mehrdad's valuable Hoses —— DP(01背包)
题目链接:http://codeforces.com/contest/742/problem/D D. Arpa's weak amphitheater and Mehrdad's valuable ...
- Codeforces Round #383 (Div. 1): D. Arpa’s letter-marked tree…(dsu on tree+状压)
题意: 给你一棵n个节点的树,每条边都代表着一个字母(a~v),对于每个节点u,求出以u为根的子树中有多少条路径满足:路径上的字符重新排列后可以得到一个回文字符串 思路: 前置:dsu on tree ...
- Codeforces Round #742 (Div. 2) F. One-Four Overload 构造 + 二分图染色
传送门 文章目录 题意: 思路: 题意: 给你一个n∗mn*mn∗m的矩形,包含...和XXX,你有两种颜色,你需要给...染色使得每个XXX上下左右相邻的...其两种颜色个数相同,输出一种合法方案. ...
- Codeforces Round #726 (Div. 2) F. Figure Fixing 二分图 + 思维
传送门 文章目录 题意: 思路 题意: 给你一张nnn个点mmm条边的图,每个点都有一个当前值aia_iai,目标值bib_ibi,每次可以选择一条边(i,j)(i,j)(i,j),将ai,aja ...
- Codeforces Round #712 Div.2(A ~ F) 超高质量题解(每日训练 Day.15 )
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #712 Div.2(A ~ F) 题解 比赛链接:https:// ...
- Codeforces Round #586 (Div. 1 + Div. 2) D. Alex and Julian 数学 + 思维
传送门 文章目录 题意: 思路: 题意: 给你一个无限个点的坐标轴,一个集合BBB,如果存在∣i−j∣=bk|i-j|=b_k∣i−j∣=bk的话,那么i,ji,ji,j之间就连边.现在问你至少要从 ...
- Codeforces Round #225 (Div. 1) E. Vowels 容斥 + sosdp
传送门 文章目录 题意: 思路: 题意: 给你nnn个长度为333的串,串的每个字母都在a−za-za−z范围内,定义一个串合法当且仅当这个串中含有至少一个元音字母.现在他忘记了元音字母都有那几个,显 ...
最新文章
- itstime后面跟什么_一文讲透什么是引流
- 2.5 程序示例--非线性决策边界-机器学习笔记-斯坦福吴恩达教授
- 使用Dockerfile定制镜像-定制Tomcat为例
- Python小游戏(小蜜蜂)
- 将所有用户设置隐私选项更新为从不向Microsoft发送Microsoft Dyanmics Error Report
- MySQL 8.0.22执行器源码分析HashJoin —— BuildHashTable函数细节步骤
- Python学习教程(Python学习路线):如何正确使用Pandas库提升项目的运行速度?...
- C#跨窗体传值的几种方法分析第三版
- python猜数字1001untitled_如何利用Matlab GUI制作猜数字游戏
- 第四次作业(1、2小题)
- 免费的录屏软件Capture
- Echarts图表没数据的时候,用图片代替暂无数据(图片自适应)
- 恒指期货高手背后的辛酸付出谁又能懂
- idgenerator 会重复吗_随机 ID 生成器
- [译转]how browsers work
- AR技术应用 の 如何做一个Pokemon GO丢出精灵球抓住皮卡丘吧!(2)
- qt轻松实现不规则按钮
- 如何策划好一场直播方案,抖音新手必备干货丨国仁网络
- iphone 中的大小和像素问题
- 时间戳 与 Unix时间戳