HDOJ -- 1869六度分离
来源:互联网 发布:杭州人工智能产业园 编辑:程序博客网 时间:2024/06/05 17:46
这道题的确跟HDOJ2544最短路类似,改改代码就行了。。
解题思路:把认识的人看成距离为1,求的任意两个人之间的“最短距离”跟7相比较(隔着6个人),如果有一种大于7则不满足。
#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>#define INF 0x3f3f3f#define MAXN 105using namespace std;int m,n;int pri[MAXN][MAXN];void floyd(){for(int i=0;i<n;i++)//下标都从0开始!! for(int j=0;j<n;j++)for(int k=0;k<n;k++)pri[j][k]=min(pri[j][k],pri[j][i]+pri[i][k]);}int main(){ while(~scanf("%d%d",&n,&m)){ for(int i=0;i<n;i++) for(int j=0;j<n;j++){ if(i==j) pri[i][j]=0;//对角线即自己到本身的距离为0 else pri[i][j]=INF;//全部初始化为无穷 }int a,b;for(int i=0;i<m;i++){scanf("%d%d",&a,&b);pri[a][b]=pri[b][a]=1;//所有认识的人之间距离设为1 }floyd();int i;for(i=0;i<n;i++)for(int j=0;j<n;j++)if(pri[i][j]>7){printf("No\n");i=n+1;break;//输出挺坑的。。 }if(i==n)printf("Yes\n");} return 0; }
0 0
- HDOJ 1869 六度分离
- HDOJ 1869 六度分离
- HDOJ 1869 六度分离
- HDOJ-1869-六度分离
- hdoj 1869 六度分离
- hdoj 1869 六度分离
- hdoj 1869 六度分离
- hdoj 1869 六度分离
- HDOJ 1869 六度分离
- HDOJ 1869 六度分离
- HDOJ -- 1869六度分离
- hdoj-1869 六度分离
- HDOJ--1869|六度分离
- ACM HDOJ 1869 (六度分离)
- HDOJ-1869六度分离(FLOYD)
- hdoj-1869-六度分离(迪杰斯特拉)
- [c]HDOJ 1869 六度分离
- HDOJ 1869 六度分离【Floyd】
- HDU2066一个人的旅行(最短路径)
- 你未曾了解过的javascript?!!
- 【HDU】-1874-畅通工程续(最短路)(dijkstra)
- mongodb之使用explain和hint性能分析和优化
- HDU1796 How many integers can you find (容斥原理)
- HDOJ -- 1869六度分离
- 关于c++中GetIDsOfNames与Invoke的使用~
- Elipse ADT(Android Developer ToolKit)是什么?在开发中的作用是什么?
- IDEA开发工具中添加Tomcat并部署项目
- android不显示TitleBar的解决方式
- Google核心技术之——PageRank算法scala实现
- mysql 表优化
- mongodb的一些基本命令
- 在Unity3D中使用C#如何进行XML文件的读写