Cod sursa(job #1739895)

Utilizator Bodo171Bogdan Pop Bodo171 Data 10 august 2016 14:19:51
Problema PScNv Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.96 kb
#include <iostream>
#include<fstream>
#include<vector>
#include<bitset>
using namespace std;
const int nmax=250005;
vector<pair <int,int > > v[nmax],a[5005];
bitset<nmax> viz;
int n,m,x,y,node1,node2,k,mn,i,j;
int main()
{
    ifstream f("pscnv.in");
    ofstream g("pscnv.out");
    f>>n>>m>>x>>y;
    for(i=1;i<=m;i++)
    {
        f>>node1>>node2>>k;
        v[node1].push_back(make_pair(node2,k));
        a[k].push_back(make_pair(node1,node2));
    }
    viz[x]=1;
    for(i=1;i<=5000&&viz[y]==0;i++)
        for(j=0;j<a[i].size()&&viz[y]==0;j++)
    {
        node1=a[i][j].first;
        node2=a[i][j].second;
        if(viz[node1]&&viz[node2]==0)
        {
            viz[node2]=1;
            for(k=0;k<v[node2].size();k++)
            {
                if(v[node2][k].second<=i)
                    a[i].push_back(make_pair(node2,v[node2][k].first));
            }

        }
        if(viz[y]) mn=i;
    }
    g<<mn;
    return 0;
}