求调
  • 板块灌水区
  • 楼主hanpiikun
  • 当前回复4
  • 已保存回复4
  • 发布时间2023/7/19 09:33
  • 上次更新2023/11/3 08:58:35
查看原帖
求调
849494
hanpiikun楼主2023/7/19 09:33

打Folyd最短路模板后发现无法编译

#include<bits/stdc++.h>

using namespace std;

const int N = 100005;
int n, m, d;
int g[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++)
			{
				g[i][j] = min(g[i][j], g[i][k] + g[k][j]);
			}
		}
	}
}

int main()
{
	cin >> n >> m >> d;
	for(int i = 1; i <= n; i++)
	{
		for(int j = 1; j <= n; j++)
		{
			if(i == j)
			{
				g[i][j] = 0;
			}
			else
			{
				g[i][j] = 0x3f3f3f3f;
			}
		}
	}
	for(int i = 1; i <= m; i++)
	{
		int a, b, c;
		cin >> a >>b >> c;
		g[a][b] = min(g[a][b], c);
	}
	Floyd();
	while(d--)
	{
		int x, y;
		cin >> x >>y;
		if(g[x][y] > 0x3f3f3f3f / 2)
		{
			puts("impossible");
		} 
		else
		{
			cout << g[x][y]; 
		}
	}
	return 0;
}
2023/7/19 09:33
加载中...