台州学院第五届大学生程序设计竞赛
来源:互联网 发布:js target属性值 编辑:程序博客网 时间:2024/04/29 20:01
扔硬币
Solve the Equation
视频监控
MFA Algorithm
Circle VS Triangle
电脑密码
The Key Locker of Cell Phone
Number Maze
修路问题
浪漫自习
最大流EK 可以过
取一个源点0 建一条边 0-1 容量为m(情侣的对数)
如果最大流等于m 就YES
此外我建图比较麻烦
对于每一条无向边 我拆成2条有向 每条有向边还有一条反向边 4条 初学
#include <cstdio>#include <cstring>#include <queue>using namespace std;const int MAX = 55;int n,m;struct edge{int u;int v;int flow;int cap;int next;}e[10000];int cap[MAX][MAX];int a[MAX];int first[MAX];int p[MAX];int edgenum;int f,c;int s,t;void add(int u,int v,int cap){e[edgenum].u = u;e[edgenum].v = v;e[edgenum].flow = 0;e[edgenum].cap = cap;e[edgenum].next = first[u];first[u] = edgenum++;e[edgenum].u = v;e[edgenum].v = u;e[edgenum].flow = 0;e[edgenum].cap = 0;e[edgenum].next = first[v];first[v] = edgenum++;}void EK(){queue <int> q;f = 0;while(1){memset(a,0,sizeof(a));memset(p,-1,sizeof(p));a[0] = 999999999;q.push(0);while(!q.empty()){int u = q.front();q.pop();for(int k = first[u]; k != -1; k = e[k].next){int v = e[k].v;if(!a[v] && e[k].cap > e[k].flow){p[v] = k;q.push(v);a[v] = min(a[u],e[k].cap - e[k].flow);}}}if(a[t] == 0)break;for(int k = p[t]; k != -1; k = p[e[k].u]){e[k].flow += a[t];e[k^1].flow -= a[t];}f += a[t];}}int main(){int i,j,k;while(scanf("%d %d",&m,&n),n||m){edgenum = 0;s = 0;t = 2;memset(first,-1,sizeof(first));memset(cap,0,sizeof(cap));add(0,1,m);for(i = 1; i <= n; i++){scanf("%d",&k);while(k--){scanf("%d",&j);cap[i][j] = cap[j][i] = 1;//add(i,j,1);//add(j,i,1);}}for(i = 1;i <= n; i++)for(j = i+1; j <= n; j++)if(cap[i][j]){add(i,j,1);add(j,i,1);}EK();if(f == m)printf("YES\n");elseprintf("NO\n");}return 0;}
自动门控制
0 0
- 台州学院第五届大学生程序设计竞赛
- 台州学院第七届“星峰杯”大学生程序设计竞赛
- 第五届河南省大学生程序设计竞赛 题解
- 第五届ACM大学生程序设计竞赛:angry_birds_again_and_again
- 第九届浙江财经大学信息学院大学生程序设计竞赛
- 河南省第五届acm大学生程序设计竞赛总结
- “浪潮杯”第五届ACM大学生程序设计竞赛
- 湖南师范大学第五届大学生计算机程序设计竞赛--G--修路
- 山东省第五届ACM大学生程序设计竞赛-angry_birds_again_and_again(积分)
- 山东省第五届ACM大学生程序设计竞赛 Full Binary Tree
- 山东省第五届ACM大学生程序设计竞赛 angry_birds_again_and_again 求积分
- 第五届ACM大学生程序设计竞赛:Full Binary Tree
- 山东省第五届ACM大学生程序设计竞赛 Weighted Median
- 第五届ACM大学生程序设计竞赛:Hearthstone II
- 山东省第五届ACM大学生程序设计竞赛 Colorful Cupcakes
- Circle(山东省第五届ACM大学生程序设计竞赛 )
- Weighted Median(山东省第五届ACM大学生程序设计竞赛 )
- 2013ACM/ICPC湘潭多省程序设计竞赛暨湘潭市第五届大学生程序设计竞赛
- Failed to read candidate component class: file [D:\workspace\j2ee\springdemo-forsimple-3\build\class
- 饥饿的苏丹
- Vod Vlc Playlist
- 原来不吃晚饭的好处这么多
- iOS应用崩溃日志揭秘2
- 台州学院第五届大学生程序设计竞赛
- visio中图形旋转任意角度的方法
- 调试HI3531与DS1339记录
- 第17周项目12-指针法求字符串长度
- vlc的应用之六:简单的视频点播系统(B/S)的实现
- JavaScript获取键盘代码(实例搜索跳转)
- 获取当天是星期几
- Android应用程序消息循环
- 第十七周项目4-进制转化