lightoj1009【DFS】
来源:互联网 发布:windows平板如何刷机 编辑:程序博客网 时间:2024/06/05 21:58
思路:
连通快+二分图,每次+二分图大的元素个数。
#include<bits/stdc++.h>using namespace std;typedef unsigned long long ULL;typedef long long LL;const int N=2e4+10;bool ex[N],vis[N];vector<int>e[N];int n,au,av; void DFS(int u,int flag){ if(flag) av++; else au++; int sz=e[u].size(); for(int i=0;i<sz;i++) { int v=e[u][i]; if(vis[v]) continue; vis[v]=true; DFS(v,1-flag); }} int main(){ int cas=1,T; scanf("%d",&T); while(T--) { int u,v; scanf("%d",&n); for(int i=1;i<=20000;i++) e[i].clear(); memset(ex,false,sizeof(ex)); for(int i=0;i<n;i++) { scanf("%d%d",&u,&v); ex[u]=ex[v]=true; e[u].push_back(v); e[v].push_back(u); } memset(vis,false,sizeof(vis)); int ans=0; for(int i=1;i<=20000;i++) { if(ex[i]&&!vis[i]){ au=0; av=0; vis[i]=true; DFS(i,0); ans=ans+max(au,av); } } printf("Case %d: %d\n",cas++,ans); } return 0;}
0 0
- lightoj1009【DFS】
- lightoj1009 - Back to Underworld【dfs】
- Lightoj1009——Back to Underworld(DFS)
- LightOJ1009---Back to Underworld (bfs染色)
- LightOJ1009-Back to Underworld -二分图染色
- DFS
- DFS
- dfs
- dfs
- dfs
- dfs
- DFS
- DFS
- dfs
- DFS
- DFS
- DFS
- dfs
- Unity3D泰课在线 ARPG 课程《泰斗破坏神》系列视频教程附素...
- 多线程面试总结
- php面试中的细节事项
- 使用switch与自增运算符循环遍历数组
- 汇编运行地址,链接地址,加载地址,存储地址 位置无关码、位置有关码 <一>
- lightoj1009【DFS】
- java__排序后的数组删除重复数字。给定升序排序的数组,如果数组有 22 个或 22 个以上相同的数字,去掉他们,直到剩下 22 个为止。
- 大三软件工程小项目-小技术集合总结
- 名词简称-英文缩写
- SQL小测
- WebRtc代码组织目录
- 软谋2014.NET开发培训系列教程
- PAT-B 1015. 德才论 (25)
- Codeforces Round #402 (Div. 1) D. Parquet Re-laying(脑洞)