why CE?
查看原帖
why CE?
575655
Chtholly_is_cute楼主2024/8/23 21:30

code:

#include<bits/extc++.h>
using namespace std;
using namespace __gnu_pbds;
cc_hash_table<pair<int,int>,int>mp;
int n,m,q;
int a,b,c;
int l,r;
void RUN(){
	for(int k=1;k<=n;k++){
		for(int i=1;i<=n;i++){
			if(k!=i){
				int t=mp[{i,k}];
				if(t==0)continue;
				int mx=k<i?k:i;
				for(int j=1;j<=mx;j++)mp[{i,j}]=mp[{j,i}]=min(mp[{i,j}],t+mp[{k,j}]);
				for(int j=k+1;j<=i;j++){
					mp[{i,j}]=mp[{j,i}]=min(t+mp[{j,k}],mp[{i,j}]);
				}

			}
		}
	}
}
inline int query(int l,int r){return mp[{l,r}];}
int main(){
	cin>>n>>m>>q;
	for(register int i=1;i<=m;i++){
		scanf("%d%d%d",&a,&b,&c);
		mp[{a,b}]=mp[{b,a}]=c;
	}
	RUN();
	for(register int i=1;i<=q;i++){
		scanf("%d%d",&l,&r);
		printf("%d\n",query(l,r));
	}
}

2024/8/23 21:30
加载中...