HDU 1869 六度分离
来源:互联网 发布:酒吧骰子软件 编辑:程序博客网 时间:2024/06/05 16:41
题目链接
题目意思
给你N个人,编号从0~N-1,接着的M行给你A和B的关系,现在让你判断是否两个人之间最多隔6个人可以让两个人相互联系。
解题思路
将两个人之间的距离定为1,那么用Floyd跑一遍,如果两个人之间的最短路大于7,那么就是两个人之间最少相隔了七个人,那么定理不存在。
代码部分
#include <iostream>#include <stdio.h>#include <string.h>#include <math.h>#include <algorithm>#include <queue>using namespace std;const int INF=9999;int n,m;int map[150][150];int dis[150];void floyd(){ for(int k=0; k<n; k++) for(int i=0; i<n; i++) for(int j=0; j<n; j++) map[i][j]=min(map[i][j],map[i][k]+map[k][j]);}int main(){ int a,b; while(scanf("%d%d",&n,&m)!=EOF) { bool flag=true; memset(map,INF,sizeof(map)); for(int i=0; i<m; i++) { scanf("%d%d",&a,&b); map[a][b]=map[b][a]=1; } floyd(); for(int i=0; i<n; i++) for(int j=0; j<n; j++) { if(map[i][j]>7) flag=false; } if(flag) printf("Yes\n"); else printf("No\n"); } return 0;}
阅读全文
0 0
- hdu 1869 六度分离
- hdu 1869 六度分离
- hdu 1869 六度分离
- 六度分离 hdu 1869
- hdu 1869 六度分离
- hdu 1869 六度分离
- HDU 1869 六度分离
- HDU 1869 六度分离
- hdu 1869 六度分离
- hdu 1869 六度分离
- hdu 1869 六度分离
- hdu-1869 六度分离
- hdu 1869 六度分离
- hdu 1869 六度分离
- hdu 1869 六度分离
- HDU 1869 六度分离
- HDU-1869六度分离
- HDU--1869六度分离
- 二叉搜索树的第k个结点
- POJ 1716 Integer Intervals 差分约束
- Oracle的导出导入
- hanoi问题
- 【NOJ】[1001] 纸牌游戏
- HDU 1869 六度分离
- 数据结构实验之栈与队列四:括号匹配 sdut-oj
- ACM动态规划总结 dp
- xnstool 一条curl 获取ip地址和dns配置
- [暴力]#514. 「LibreOJ β Round #2」模拟只会猜题意
- DOM常用方法之 插入,删除,添加等。
- 进制转换
- Restful Api写法心得之二《参数接收篇》
- java建立顺序表及增删改查功能实现