加强数据了吗,为什么会被T
查看原帖
加强数据了吗,为什么会被T
467616
osky123456楼主2022/1/20 21:35

这个数据小啊,为什么突然TLE啊,O(n^3)不能过吗

#include<bits/stdc++.h>
using namespace std;
const int N =0x3f;
int n,m,t,dis[1000][1000];
int main(){
	cin>>n>>m>>t;
	memset(dis,0x7f,sizeof(dis));
	for(int i=1;i<=m;++i){
		int u,v,c;
		cin>>u>>v>>c;
		dis[u][v]=c;
	}
	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]));
			}
		}
	}
	for(int i=1;i<=t;++t){
		int u,v;
		cin>>u>>v;
		if(dis[u][v]==0x7f7f7f7f) cout<<"-1"<<endl;
		else cout<<dis[u][v]<<endl;
	}
	return 0;
}

2022/1/20 21:35
加载中...