2017 CCPC秦皇岛 D
来源:互联网 发布:chip数据 编辑:程序博客网 时间:2024/04/28 20:37
考虑到对于一个联通块,最后一个加的点一定是度数最大的点,并且度数是联通块的siz-1。而把这个点删掉之后的图,因为每个点的度数同减一,依然满足上述性质。于是反过来想可以发现,若有解,则将最终度数从小到大依次加入图的方案一定是一组解。判断这种加点方式是否成立即可。用并查集维护联通性。
#include <bits/stdc++.h>using namespace std;const int maxn=105000;vector<int>g[maxn], ans[maxn];int n, m;int fa[maxn], siz[maxn], id[maxn], degree[maxn];bool vis[maxn];bool cmp(int x, int y){ return degree[x]<degree[y];}int f(int x){ if(x==fa[x])return x; return fa[x]=f(fa[x]);}int main(){ int T; scanf("%d", &T); while(T--){ scanf("%d%d", &n, &m); for(int i=1;i<=n;i++){ g[i].clear(); ans[i].clear(); fa[i]=id[i]=i, siz[i]=1; degree[i]=0; vis[i]=false; } for(int i=1;i<=m;i++){ int u, v; scanf("%d%d", &u, &v); degree[u]++, degree[v]++; g[u].push_back(v); g[v].push_back(u); } sort(id+1, id+1+n, cmp); //for(int i=1;i<=n;i++)printf("%d%c", id[i], i==n?'\n':' '); bool ok=true; for(int i=1;i<=n;i++){ int u=id[i]; int sum=0; vis[u]=true; for(int j=0;j<g[u].size();j++){ int v=g[u][j]; if(!vis[v])continue; sum++; v=f(v); if(v==u)continue; ans[i].push_back(v); fa[v]=u; siz[u]+=siz[v]; } if(siz[u]!=sum+1){ ok=false; break; } } if(!ok)printf("No\n"); else { printf("Yes\n"); for(int i=1;i<=n;i++){ printf("%d %d", id[i], (int)ans[i].size()); for(int j=0;j<ans[i].size();j++){ printf(" %d", ans[i][j]); } printf("\n"); } } }}
阅读全文
0 0
- 2017 CCPC秦皇岛 D
- 2017 CCPC 秦皇岛站
- 2017 CCPC秦皇岛 B
- 2017CCPC秦皇岛
- 2017 CCPC 秦皇岛
- 2017 CCPC 秦皇岛 C
- 2017 CCPC 秦皇岛 E
- 2017 CCPC 秦皇岛 L
- 2017 CCPC 秦皇岛 M
- 2017CCPC秦皇岛 E:String of CCPC
- 2017 ccpc 秦皇岛E String of CCPC
- 2017 CCPC 秦皇岛 G题
- 2017 ccpc秦皇岛站总结
- 2017 CCPC-秦皇岛站总结
- 2017CCPC秦皇岛站总结
- 2017ccpc秦皇岛站总结
- 2017CCPC秦皇岛现场赛
- 2017 CCPC 秦皇岛站总结
- 安装mysql5.7.20版本
- 不止狂卖芯片,英伟达也飙了新算法:用AI生成逼真的虚假名人照,可用于万物
- 专访微软全球资深副总裁:中国AI正在爆发式崛起,千万不要复制美国,要建立自己的模式,才能做领导者
- 【NOIP2017提高A组冲刺11.2】字典序(拓扑序+堆)
- import与require
- 2017 CCPC秦皇岛 D
- 22岁复旦大学生拿下深度学习挑战赛冠军:明明可以靠脸吃饭,却偏偏要靠才华
- 读书笔记--认知突围
- python设计模(桥接模式)
- 电脑怎么进入BIOS的方法集合
- Pretty good translator software “qTranslate” Continually updated
- 春雪
- 获取手机网络状态
- 【Sublime】12个不可不知的Sublime Text应用技巧和诀窍