UVa 10985 Rings'n'Ropes floyd+BFS
来源:互联网 发布:免费财务记账软件 编辑:程序博客网 时间:2024/05/22 16:46
n个戒指 和m条长度为1 的绳子
求左右手拿住任意2个戒指 最多几条绳子被拉直
拿住哪2个不知道 所以两两枚举
对于2个戒指之间 可以考虑最短路 然后可能有很多条最短路 在路径统计下就行
看懂样例怎么出来的就知道怎么回事了
样例3就是一个环 拉住0 和 2 你们就有2条最短路 每条都是3
样例4是一样的
#include <cstdio>#include <cstring>#include <algorithm>#include <queue>using namespace std;const int MAX = 130;int a[MAX][MAX];int map[MAX][MAX];bool vis[MAX][MAX];int n,m;int cnt;void floyd(){int i,j,k;for(k = 0; k < n; k++)for(i = 0; i < n; i++)for(j = 0; j < n; j++)a[i][j] = min(a[i][j],a[i][k]+a[k][j]);}void bfs(int s,int e){queue <int> q;q.push(s);int i;while(!q.empty()){int u = q.front();q.pop();for(i = 0; i < n; i++){if(vis[u][i])continue;if(!map[u][i])continue;if(a[e][i] + 1 == a[e][u]){cnt++;vis[u][i] = vis[i][u] = true;q.push(i);}}}}int main(){int t,cas = 1;int i,j;int s,e;scanf("%d",&t);while(t--){memset(a,0,sizeof(a));memset(map,0,sizeof(map));scanf("%d %d",&n,&m);for(i = 0; i < n; i++)for(j = 0; j < n; j++){if(i == j)a[i][j] = 0;elsea[i][j] = 999999999;}for(i = 0; i < m; i++){scanf("%d %d",&s,&e);a[s][e] = a[e][s] = 1;map[s][e] = map[e][s] = 1;}floyd();int max = 0;for(i = 0; i < n; i++){for(j = i+1; j < n; j++){if(a[i][j] == 999999999)continue;memset(vis,false,sizeof(vis));cnt = 0;bfs(i,j);if(max < cnt)max = cnt;}}//printf("%d %d\n",a[0][1],a[1][0]);printf("Case #%d: %d\n",cas++,max);}return 0;}
0 0
- UVa 10985 Rings'n'Ropes floyd+BFS
- UVA 10985 - Rings'n'Ropes(floyd)
- Rings'n'Ropes - UVa 10985 Floyd
- Rings'n'Ropes (Uva 10985 floyd+枚举)
- uva 10985 Rings'n'Ropes 解题报告
- UVA - 10985 Rings'n'Ropes 最短路
- uva 10952 Rings'n'Ropes
- uva 10985 - Rings'n'Ropes( 最短路Folyd)
- UVa10985 Rings'n'Ropes
- UVA 10301 Rings and Glue
- UVa 10301 - Rings and Glue
- Rings
- UVa Problem 117 - The Postal Worker Rings Once
- UVA 567 risk FLOYD
- Uva - 10048 - Audiophobia(Floyd)
- UVA 567 Floyd算法
- UVA 567 - Risk (floyd)
- UVA 10048 - Audiophobia(floyd)
- 异步复位、同步释放
- spring3+ jar包介绍
- 复制数据库中的表格 新建一个新的表 所有属性。再添加属性
- JAVA内存模型
- EJB介绍及视频教程
- UVa 10985 Rings'n'Ropes floyd+BFS
- AJAX基本原理
- Log4j例子
- Linux利器strace
- test9-3(学生信息类)
- 正则表达式匹配中文
- 注册vpn地址
- 电驴不能下载的办法
- Linux查看文件命令(三)