Gym100923H Por Costel and the Match
题目链接:http://codeforces.com/gym/100923/problem/H
分析:并查集,用enemy储存x的敌人,用weight储存权重决定根节点
需用scanf和puts输入输出否则会爆
1 #include<iostream>
2 #include<sstream>
3 #include<cstdio>
4 #include<cstdlib>
5 #include<string>
6 #include<cstring>
7 #include<algorithm>
8 #include<functional>
9 #include<iomanip>
10 #include<numeric>
11 #include<cmath>
12 #include<queue>
13 #include<vector>
14 #include<set>
15 #include<cctype>
16 #define PI acos(-1.0)
17 const int INF = 0x3f3f3f3f;
18 const int NINF = -INF - 1;
19 const int maxn = 1e5 + 5;
20 typedef long long ll;
21 using namespace std;
22 int n, m;
23 int fa[maxn], enemy[maxn], weight[maxn];
24 int find(int x)
25 {
26 return x == fa[x] ? x : fa[x] = find(fa[x]);
27 }
28 void unite(int x, int y)
29 {
30 if (weight[x] < weight[y]) fa[x] = y;
31 else
32 {
33 fa[y] = x;
34 if (weight[x] == weight[y]) weight[x]++;
35 }
36 }
37 int main()
38 {
39 //std::ios::sync_with_stdio(false);
40 freopen("meciul.in", "r", stdin);
41 freopen("meciul.out", "w", stdout);
42 int T;
43 scanf("%d", &T);
44 while (T--)
45 {
46 scanf("%d%d", &n, &m);
47 memset(enemy, 0, sizeof(enemy));
48 memset(weight, 0, sizeof(weight));
49 for (int i = 1; i <= n; ++i) fa[i] = i;
50 while (m--)
51 {
52 int x, y;
53 scanf("%d%d", &x, &y);
54 int f1 = find(x), f2 = find(y);
55 if (f1 == f2) puts("NO");
56 else
57 {
58 if (!enemy[x]) enemy[x] = y;
59 else unite(f2, find(enemy[x]));
60 if (!enemy[y]) enemy[y] = x;
61 else unite(f1, find(enemy[y]));
62 puts("YES");
63 }
64 }
65 }
66 return 0;
67 }
Gym100923H Por Costel and the Match的更多相关文章
- 【并查集】Gym - 100923H - Por Costel and the Match
meciul.in / meciul.out Oberyn Martell and Gregor Clegane are dueling in a trial by combat. The fight ...
- 【带权并查集】Gym - 100923H - Por Costel and the Match
裸题. 看之前的模版讲解吧,这里不再赘述了. #include<cstdio> #include<cstring> using namespace std; int fa[10 ...
- Gym-100923H-Por Costel and the Match(带权并查集)
链接: https://vjudge.net/problem/Gym-100923H 题意: Oberyn Martell and Gregor Clegane are dueling in a tr ...
- 【Heap-dijkstra】Gym - 100923B - Por Costel and the Algorithm
algoritm.in / algoritm.out Even though he isn't a student of computer science, Por Costel the pig ha ...
- 【找规律】Gym - 100923L - Por Costel and the Semipalindromes
semipal.in / semipal.out Por Costel the pig, our programmer in-training, has recently returned from ...
- 【分块打表】Gym - 100923K - Por Costel and the Firecracker
semipal.in / semipal.out Por Costel the pig, our programmer in-training, has recently returned from ...
- 【数形结合】Gym - 100923I - Por Costel and the Pairs
perechi3.in / perechi3.out We don't know how Por Costel the pig arrived at FMI's dance party. All we ...
- 【动态规划】Gym - 100923A - Por Costel and Azerah
azerah.in / azerah.out Por Costel the Pig has received a royal invitation to the palace of the Egg-E ...
- 【Gym - 100923A】Por Costel and Azerah(思维水题)
Por Costel and Azerah Descriptions 给你n个数 问你,有多少个子序列 的和是偶数 Example Input 233 10 124 2 Output 33 题目链接 ...
随机推荐
- Medium Free
fetch(window.location.href,{credentials:"omit",redirect:"follow",mode:"no-c ...
- 忘记Mysql的root用户密码处理方法(以mysql 5.5.33为例)
1.修改mysql服务器的脚本 ~]#vi /etc/rc.d/init.d/mysqld #找到$bindir/mysqld_safe --datadir="$datadir" ...
- IO - 同步,异步,阻塞,非阻塞 (亡羊补牢篇)【转】
同步(synchronous) IO和异步(asynchronous) IO,阻塞(blocking) IO和非阻塞(non-blocking)IO分别是什么,到底有什么区别? 详细请看下链接: IO ...
- scu-4440 rectangle (非原创)
Rectangle frog has a piece of paper divided into nn rows and mm columns. Today, she would like to dr ...
- POJ 3581 Sequence(后缀数组)题解
题意: 已知某字符串\(str\)满足\(str_1 > max\{str_2,str_3 \cdots str_n\}\),现要求把这个字符串分成连续的三组,然后每组都翻转,问字典序最小是什么 ...
- 概率分析方法与推断统计(来自我写的python书)
在数据分析统计的场景里,常用的方法除了描述性统计方法外,还有推断统计方法,如果再从工作性质上来划分,推断统计包含了参数估计和假设验证这两方面的内容.而推断统计用到了很多概率统计方法,所以本小节在介绍推 ...
- /usr/lib/nvidia-384/libEGL.so.1 is not a symbolic link
记得要将384改为自己系统对应的a. sudo mv /usr/lib/nvidia-384/libEGL.so.1 /usr/lib/nvidia-384/libEGL.so.1.org sudo ...
- Azure & Serverless
Azure & Serverless https://azure.microsoft.com/en-us/get-started/webinar/on-demand/ blob:https:/ ...
- taro taro 多端同步调试
taro 多端同步调试 debug https://nervjs.github.io/taro/docs/envs-debug.html
- nasm astrrev函数 x86
xxx.asm %define p1 ebp+8 %define p2 ebp+12 %define p3 ebp+16 section .text global dllmain export ast ...