HDU 1869 六度分离【floyd】
2015-04-15 00:35
369 查看
题意:给出n个人,m个关系,问是否满足任意两个人之间的距离通过6个人就可以连接
用floyd就可以了,注意距离是大于7
View Code
用floyd就可以了,注意距离是大于7
#include<iostream> #include<cstdio> #include<cstring> #include <cmath> #include<stack> #include<vector> #include<map> #include<set> #include<queue> #include<algorithm> using namespace std; typedef long long LL; const int INF = (1<<30)-1; const int mod=1000000007; const int maxn=505; int d[maxn][maxn]; int n,m; int floyd(){ for(int k=0;k<n;k++) for(int i=0;i<n;i++) for(int j=0;j<n;j++) d[i][j]=min(d[i][j],d[i][k]+d[k][j]); for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(d[i][j]>7) return 0; } } return 1; } int main(){ while(scanf("%d %d",&n,&m)!=EOF){ for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ if(i==j) d[i][j]=0; else d[i][j]=INF; } } for(int i=1;i<=m;i++){ int u,v; scanf("%d %d",&u,&v); d[u][v]=d[v][u]=1; } if(floyd()) printf("Yes\n"); else printf("No\n"); } return 0; }
View Code
相关文章推荐
- HDU 1869 六度分离(最短路 floyd)
- HDU 1869 六度分离(floyd)
- HDU 1869 六度分离 floyd
- 【HDU】-1869-六度分离(最短路)(floyd)
- hdu 1869 六度分离 Floyd
- HDU-1869—六度分离 (Floyd)
- hdu1869 六度分离(Floyd)
- HDU 1869-六度分离(floyd)
- hdu 1869 六度分离(floyd最短路)
- HDU 1869 六度分离 (floyd)
- HDU 1869 六度分离(floyd)
- hdu1869 六度分离(Floyd)
- HDU-1869 六度分离(Floyd)
- HDU 1869 六度分离 (floyd)
- HDU 1869 六度分离 (Floyd模板题)
- hdu1869 六度分离 (floyd)
- HDU 1869 六度分离(Floyd)
- HDU 1869 六度分离(简单Floyd)
- HDU ACM 1869 六度分离(Floyd)
- hdu 1869 六度分离-floyd