当前位置: 首页 > news >正文

[最短路Floyd],启动!!!

B3647 【模板】Floyd

#include<bits/stdc++.h>
#define ll long long
#define fi first
#define se second
#define pb push_back
#define PII pair<int,int >
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)
using namespace std;
const int N = 405;
int n,m;
int dis[N][N];
void floyd()
{for(int k=1;k<=n;k++){for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){dis[i][j] = min(dis[i][j],dis[i][k]+dis[k][j]);}}}
}
int main()
{IOS;cin>>n>>m;for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){dis[i][j] = 1e9;if(i==j) dis[i][j] = 0;}}while(m--){int a,b,w;cin>>a>>b>>w;dis[a][b] = min(dis[a][b],w);dis[b][a] = min(dis[b][a],w);//双向边}floyd(); for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){cout<<dis[i][j]<<" ";}cout<<"\n";}
}

P1744 采购特价商品

#include<bits/stdc++.h>
#define ll long long
#define fi first
#define se second
#define pb push_back
#define PII pair<int,int >
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)
using namespace std;
const int N = 300;
int n,m;
double dis[300][300];
struct Node{int x;int y;
}va[N];
void flyod()
{for(int k=1;k<=n;k++){for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){dis[i][j] = min(dis[i][j],dis[i][k]+dis[k][j]);}}}
}
int main()
{
//	IOS;cin>>n;for(int i=1;i<=n;i++) cin>>va[i].x>>va[i].y;cin>>m;for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){dis[i][j] = 1e9;if(i==j) dis[i][j] = 0;}}for(int i=1;i<=m;i++){int a,b;cin>>a>>b;double w = sqrt( (va[a].x-va[b].x)*(va[a].x-va[b].x)+(va[a].y-va[b].y)*(va[a].y-va[b].y) );dis[a][b] = min(dis[a][b],w);dis[b][a] = min(dis[b][a],w);}flyod();int s,t;cin>>s>>t;printf("%.2lf",dis[s][t]);
}

P2888 [USACO07NOV] Cow Hurdles S

#include<bits/stdc++.h>
#define ll long long
#define fi first
#define se second
#define pb push_back
#define PII pair<int,int >
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)
using namespace std;
const int N = 400;
int n,m,T;
int dis[N][N];
void floyd()
{for(int k=1;k<=n;k++){for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){dis[i][j] = min(dis[i][j],max(dis[i][k],dis[k][j]));}}}
}
int main()
{IOS;cin>>n>>m>>T;for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){dis[i][j] = 1e9;if(i==j) dis[i][j] = 0;}	}while(m--){int a,b,w;cin>>a>>b>>w;dis[a][b] = min(dis[a][b],w);}floyd();while(T--){int a,b;cin>>a>>b;if(dis[a][b]==1e9) cout<<-1<<"\n";else cout<<dis[a][b]<<"\n";}
}

P1364 医院设置

#include<bits/stdc++.h>
#define ll long long
#define fi first
#define se second
#define pb push_back
#define PII pair<int,int >
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)
using namespace std;
const int N = 200;
int n;
int dis[N][N];
int va[N];
void floyd()
{for(int k=1;k<=n;k++){for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){dis[i][j] = min(dis[i][j],dis[i][k]+dis[k][j]);}}}
}
int main()
{IOS;cin>>n;for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){dis[i][j] = 1e9; if(i==j) dis[i][j] =0;}}for(int i=1;i<=n;i++){int a,b;cin>>va[i]>>a>>b;if(b!=0) dis[i][b] = min(dis[i][b],1),dis[b][i] =min(dis[b][i],1);if(a!=0) dis[i][a] = min(dis[i][a],1),dis[a][i] = min(dis[a][i],1);}floyd();int minn =1e9;for(int i=1;i<=n;i++){int sum = 0;for(int j=1;j<=n;j++){sum += dis[i][j]*va[j];}minn = min(sum,minn);}cout<<minn;
}

P1359 租用游艇

#include<bits/stdc++.h>
#define ll long long
#define fi first
#define se second
#define pb push_back
#define PII pair<int,int >
#define IOS ios::sync_with_stdio(false),cin.tie(0),cout.tie(0)
using namespace std;
const int N = 400;
int n,m;
int dis[N][N];
void floyd()
{for(int k=1;k<=n;k++){for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){dis[i][j] = min(dis[i][j],dis[i][k]+dis[k][j]);}}}
}
int main()
{IOS;cin>>n;for(int i=1;i<=n;i++){for(int j=1;j<=n;j++){dis[i][j] = 1e9;if(i==j) dis[i][j] = 0;}}for(int i=1;i<=n-1;i++){for(int j=i+1;j<=n;j++){int w;cin>>w;dis[i][j] = min(dis[i][j],w);}}floyd();cout<<dis[1][n];
}
http://www.lryc.cn/news/414280.html

相关文章:

  • 7月29(信息差)
  • ubuntu中禁止使用鼠标拖动来移动文件
  • 【密码学】椭圆曲线密码体制(ECC)
  • 第25集《大佛顶首楞严经》
  • python 读写文件之 open 和 with open() 详细解析
  • 操作系统:内存----知识点
  • pfx如何配置到nginx中
  • 详细测评下搬瓦工香港CN2 GIA VPS
  • Java中的五种线程池类型
  • FFmpeg Windows安装教程
  • ‘#‘ is not followed by a macro parameter 关于宏定义的错误
  • 内网穿透--meterpreter端口转发实验
  • Python 数据类:减少样板并提高可读性
  • 家庭教育系列—北京海淀区”鸡娃“攻略
  • DLMS/COSEM中的信息安全:DLMS/COSEM安全概念(下)
  • 基于 systemc-2.3.1的virtual device 接入 qemu-arm
  • (七)自动化测试
  • 【信创】virtualbox内虚拟机连接U盘 _ 统信 _ 麒麟 _ 中科方德
  • 【2024】Datawhale AI夏令营 Task4笔记——vllm加速方式修改及llm推理参数调整上分
  • 腾讯OCR签名算法
  • CTFHUB-SSRF-DNS重绑定 Bypass
  • 【oracle】数据库基本使用
  • Action部署在线上写文章
  • CC链 (Commons Collections)
  • 左手坐标系、右手坐标系、坐标轴方向
  • 芋道源码yudao-cloud 二开日记(商品sku数据归类为规格属性)
  • 自媒体新闻资讯类网站模板/EyouCMS自媒体资讯类网站模板
  • Python3 第六十课 -- 实例二十九
  • 【JAVA入门】Day17 - GUI
  • OpenAI API continuing conversation in a dialogue