HDU-1869-六度分离
来源:互联网 发布:手机vb编辑器使用 编辑:程序博客网 时间:2024/06/01 09:52
ACM模版
描述
题解
floyd搞搞事情,求任意两点之间的距离是否超过7,默认每条路径长度为1。
代码
#include <iostream>#include <cstring>using namespace std;/* * Floyd算法,求从任意节点i到任意节点j的最短路径 * cost[][]:初始化为INF(cost[i][i]:初始化为0) */const int MAXN = 100;int cost[MAXN][MAXN];int lowcost[MAXN][MAXN];int path[MAXN][MAXN];void Floyd(int n){ memcpy(lowcost, cost, sizeof(cost)); memset(path, -1, sizeof(path)); for (int k = 0; k < n; k++) { for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { if (lowcost[i][j] > (lowcost[i][k] + lowcost[k][j])) { lowcost[i][j] = lowcost[i][k] + lowcost[k][j]; path[i][j] = k; } } } } return ;}int main(int argc, const char * argv[]){ int N, M; while (cin >> N >> M) { memset(cost, 0x3f, sizeof(cost)); int a, b; for (int i = 0; i < M; i++) { scanf("%d%d", &a, &b); cost[a][b] = cost[b][a] = 1; } Floyd(N); bool flag = true; for (int i = 0; i < N; i++) { for (int j = i + 1; j < N; j++) { if (lowcost[i][j] > 7) { flag = false; break; } } } if (flag) { cout << "Yes\n"; } else { cout << "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六度分离
- 数据库连接池的简单实现
- ansible - nagios和zabbix客户端的部署
- 图解端口映射、本地端口转发、远程端口转发
- java 集合
- java io流的字节流文件传输方式
- HDU-1869-六度分离
- 盖世神器PowerPro使用视频教程-1. 程序的安装概述
- 是是是
- 关于路径前加于不加(/)斜杠
- linux 服务的启动和管理
- 防止搬瓦工被封的注意事项
- 22 IO流-字符流、缓冲字符流、递归
- redis和memcached工作原理
- SequenceInputStream(序列流)和对象的输入输出流