![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
并查集
阿晴0917
这个作者很懒,什么都没留下…
展开
-
L2-032 彩虹瓶 栈 有另一个容器暂时存 L3-002 特殊堆栈 L3-003 社交集群 L3-001凑零钱dfs L1-019. 谁先倒 L2-004 这是二叉搜索树吗 L1-009N个数求和
https://pintia.cn/problem-sets/994805046380707840/problems/1111914599412858889#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=2e5+5;ll n,m,k,a[maxn],f,num,s;...原创 2020-03-01 20:45:52 · 168 阅读 · 0 评论 -
POJ 1182 食物链 种类并查集向量思维模式/扩展域并查集
https://blog.csdn.net/qq_42505741/article/details/81104742#include<iostream>#include<cstdio>using namespace std;typedef long long ll;#define IO ios::sync_with_stdio(false);cin.tie(0);...原创 2020-02-03 20:40:20 · 893 阅读 · 0 评论 -
Codeforces766D Mahmoud and a Dictionary 种类并查集/扩展域并查集
https://blog.csdn.net/qq_42505741/article/details/81104742#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=1e5+5;int n,m,q,pre[maxn],root[maxn],a[maxn];//root...原创 2020-02-03 12:59:46 · 327 阅读 · 0 评论 -
Codeforces722C 并查集
正向删除 逆向合并if else分支特判写好https://codeforces.com/contest/722/problem/C#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=1e5+5;ll n,a[maxn],p[maxn],res[maxn];ll p...原创 2020-02-02 13:38:06 · 297 阅读 · 0 评论 -
Codeforces691D并查集+优先队列 不开IO超时
用到了find 和 合并操作n,m<=1e6 m个可交换的位置对 1-n序列 求利用可交换的位置字典序最大#include <bits/stdc++.h>using namespace std;#define endl '\n'#define IO ios::sync_with_stdio(false);cin.tie(0);#define pb push_back...原创 2020-02-02 10:41:40 · 153 阅读 · 0 评论 -
HDU3461 并查集应用 求互不相交的区间数 MLE原因ll变量爆内存
https://blog.csdn.net/Estia_/article/details/82873771#include <bits/stdc++.h>using namespace std;#define endl '\n'#define IO ios::sync_with_stdio(false);cin.tie(0);#define pb push_backtyp...原创 2020-02-01 22:12:32 · 1417 阅读 · 0 评论 -
并查集 按字符串所在位置合并
https://new.npuacm.info/statistics查刷题数上一次未访问 last[s[j]-‘a’] 值改为pos上一次访问过 合并 此点的根加到上一次的根#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=1e6+5;const ll mod=1...原创 2019-12-04 10:45:50 · 210 阅读 · 1 评论 -
Codeforces1253D 带权并查集
https://codeforces.com/contest/1253/problem/Dn个点 m条边 <=2e5l<m<r l能到r 则l一定得满足可以到中间点加最小边数能满足条件14 81 22 73 46 35 73 86 811 121#include<bits/stdc++.h>using namespace std;ty...原创 2019-11-20 11:04:38 · 158 阅读 · 0 评论 -
带权并查集 求同一队列中两数距离
先添加 的在队列前 个数也代表了位置dis[x]+=dis[pre[x]];dis[px] = dis[py] + num[py];#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=1e6+5;ll q,pre[maxn],num[maxn],dis[maxn],f...原创 2019-11-07 18:39:51 · 129 阅读 · 0 评论 -
Codeforces Round #595 (Div. 3) 题解 C 3进制 E 简单dp
B2 n=2e5dfs连通分量/并查集#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=1e6+5;#define rep(i,a,n) for(int i=a;i<=n;i++)ll q,n,x,to[maxn],vis[maxn],num[maxn];v...原创 2019-10-23 18:33:46 · 136 阅读 · 0 评论 -
NE的挑战II 带权并查集
有隐藏仇恨结构体数组#include<bits/stdc++.h>using namespace std;typedef long long ll;const int maxn=1e6+5;int n,m,pre[maxn],cnt[maxn],cntt;bool vis[maxn]; //隐藏仇恨struct node{ int p1; int p2;}h[ma...原创 2019-10-08 16:12:08 · 72 阅读 · 0 评论 -
Codeforces1209 A集合用法 C单调栈/枚举边界维护递增D转化为图 G1双指针2e5 O(n)
https://codeforces.com/contest/1209/problem/BA注意7 10 15int n,m,k,T,minn=INF,maxx,cnt,sum,tmp,f=0,ans;set<int> s;int ww[maxn],vis[maxn];int main(){ cin>>n; rep(i,1,n){ cin>&g...原创 2019-09-15 11:13:48 · 420 阅读 · 0 评论 -
Codeforcs1167B 交互 C并查集 D括号层数红黑分
https://codeforces.com/contest/1167/problem/B交互题技巧,cin,cout可以自动刷新,而scanf,printf则需要手动用fflush(stdout)来刷新根据观察我们可以发现,这六个数两两乘积不相等,所以a1a2 a2a3这样的解是唯一的,并且只有六个数,我们用next_permatation全排列函数可以得到结果#include<bi...原创 2019-08-07 16:18:20 · 107 阅读 · 0 评论 -
Codeforces Round #548 (Div. 2)1139C dsu on tree树上的启发式合并
n=1e5 k=1000红 1黑至少经过1次黑边 反面全为红边 红边点并查集合并记录最大长度 排除单点为1注意减法取模 要加modll pow_mod(ll a,ll b,ll mod){ ll res=1; while(b!=0) { if(b&1) res=res*a%mod; b>>=1; a=a*a%mod; } return re...原创 2019-03-31 10:55:55 · 139 阅读 · 0 评论 -
HDU1232畅通工程(并查集)
Problem Description某省调查城镇交通状况,得到现有城镇道路统计表,表中列出了每条道路直接连通的城镇。省政府“畅通工程”的目标是使全省任何两个城镇间都可以实现交通(但不一定有直接的道路相连,只要互相间接通过道路可达即可)。问最少还需要建设多少条道路?Input测试输入包含若干测试用例。每个测试用例的第1行给出两个正整数,分别是城镇数目N ( < 1000 )和道路数目M...原创 2019-03-04 22:24:21 · 110 阅读 · 0 评论