WA10求助,只过了#1和样例,剩下的MLE
查看原帖
WA10求助,只过了#1和样例,剩下的MLE
1249803
lgydkkyd楼主2024/3/28 21:28
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,m,s,t,x,y,w,ans=LONG_LONG_MAX,a[2501][2501];
void dfs(int k,int d){
	if(d>=ans)return ;
	if(k==t){
		ans=min(ans,d);
		return ;
	}
	for(int i=1;i<=n;i++){
		if(a[k][i]!=0){
			dfs(i,d+a[k][i]);
		}
	}
}
signed main(){
	scanf("%lld%lld%lld%lld",&n,&m,&s,&t);
	for(int i=1;i<=m;i++){
		scanf("%lld%lld%lld",&x,&y,&w);
		if(x==y)continue;
		a[x][y]=w;
		a[y][x]=w;
	}
	dfs(s,0);
	cout<<ans;
	return 0;
}

蒟蒻不才,求教

2024/3/28 21:28
加载中...