危险系数_纪中1391_floyd
来源:互联网 发布:maxwell仿真软件下载 编辑:程序博客网 时间:2024/05/18 18:19
题目描述
FJ在一条船上,海上有N(1<=N<=100)岛,编号为1..N,现在他的任务是按照一个给定访问次序A_1,A_2,….A_M去探索这M(2<=M<=10,000)个岛屿,已经知道任意两个岛屿之间的危险系数,让你找出一个探索序列,只需满足你的探索序列包含给定的A_1..A_M这个序列就可以(不一定要连续),使得总的危险系数最小。
输入
第1行: 两个数, N 和 M
第 2..M+1行: 第i+1行表示给定的序列中第i个岛屿A_i
第M+2..N+M+1行:每行N个整数,表示岛屿之间的危险系数,对角线上一定是0。
输出
输出满足要求的最小危险系数
题解
求最短路且n=100,floyd,切掉!
输出略坑,邻接矩阵最终可能不对称
cOde
#include <stdio.h>using namespace std;int f[101][101];int x[10001];int main(){ int n,m; scanf("%d%d",&n,&m); for (int i=1;i<=m;i++) scanf("%d",&x[i]); for (int i=1;i<=n;i++) for (int j=1;j<=n;j++) scanf("%d",&f[i][j]); for (int k=1;k<=n;k++) for (int i=1;i<=n;i++) for (int j=1;j<=n;j++) if (i!=k&&i!=j&&j!=k&&f[i][k]+f[k][j]<f[i][j]) f[i][j]=f[i][k]+f[k][j]; int ans=0; for (int i=2;i<=m;i++) ans+=f[x[i-1]][x[i]]; printf("%d\n",ans); return 0;}
1 0
- 危险系数_纪中1391_floyd
- 危险系数
- 危险系数
- 危险系数
- 历届试题 危险系数
- 历届试题 危险系数
- 【蓝桥杯】危险系数
- 蓝桥杯-危险系数
- 蓝桥杯PREV_12危险系数
- 危险系数 割点
- 蓝桥杯--危险系数
- 蓝桥杯 危险系数
- 蓝桥杯 危险系数
- 蓝桥杯 危险系数 DFS
- 危险系数---深搜
- 危险系数题解
- 割点-危险系数
- 蓝桥杯 危险系数
- Toast 常见的创建方式
- Android View中getViewTreeObserver().addOnGlobalLayoutListener()以及获取控件的大小
- python while()语句
- 技术那点事-中文IT信息服务网站,为IT专业技术人员提供最全面的信息和服务的网站
- 使用EventBus在Activity与BroadcastReceiver之间进行通信
- 危险系数_纪中1391_floyd
- HTML5中进行SQL的操作
- Android 5.0之后启动Service 服务的方式
- iOS 去除JSON里的转义字符
- 最大公约数和最小公倍数
- Two Numbers
- 关于灰帽python一书中提到的debugger
- Android判断APP是否第一次启动
- 双边滤波器