为何会MLE
查看原帖
为何会MLE
1095322
mc_xiexie楼主2024/5/27 13:42

RT

#include<bits/stdc++.h>
using namespace std;
const long long inf=2147483647;
int n,m,s;
struct edge{
    int to;int dis;int next;
}a[150][250];
int sum=0,ans=inf;
bool b=0;
void bfs(int t,int y){
    if(t==y){
        ans=min(ans,sum);
        b=1;
        return ;
    }
    for(int i=1;i<=n;i++){
        if(a[t][i].to!=0){
            sum+=a[t][i].next;
            bfs(i,y);
            sum-=a[t][i].next;
        }
    }
    return ;
}
int main(){
	//freopen("114514.txt","r",stdin);
    cin>>n>>m>>s;
    for(int i=1;i<=m;i++){
        int d,b,c;
        cin>>d>>b>>c;
        if(a[d][b].to==d && a[d][b].dis==b && c<a[d][b].next){
            a[d][b].next=c;
        }
        else{
            a[d][b].to=d;
            a[d][b].dis=b;
            a[d][b].next=c;
        }
    }
    for(int i=1;i<=n;i++){
        bfs(s,i);
        if(b){
        	cout<<ans<<" ";
        	ans=inf;
        	b=1;
		}
        else{
        	cout<<inf<<" ";
		}
    }
    return 0;
}
2024/5/27 13:42
加载中...