Cod sursa(job #3306077)

Utilizator mtcmtcmtc mtc mtcmtc Data 7 august 2025 13:09:38
Problema Sate Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <fstream>
#include <vector>
using namespace std;
ifstream cin("sate.in");
ofstream cout("sate.out");
const int maxn=3e4+5;
vector<pair<int,int>>adj[maxn];
int n,m,x,y;
int sum=0;
int vis[maxn];
bool ok=0;
void dfs(int nod){
    vis[nod]=1;
    if(nod==y){
        ok=1;
        return;
    }
    for(auto next:adj[nod]){
        if(!vis[next.first]){
            if(nod<next.first) sum+=next.second;
            else sum-=next.second;
            dfs(next.first);
            if(ok==1) return;
            if(nod<next.first) sum-=next.second;
            else sum+=next.second;
        }
    }
}
int main()
{
    cin>>n>>m>>x>>y;
    for(int i=1;i<=m;i++){
        int a,b,d;
        cin>>a>>b>>d;
        adj[a].push_back({b,d});
        adj[b].push_back({a,d});
    }
    dfs(x);
    cout<<sum;
    return 0;
}