Cod sursa(job #1273563)

Utilizator Corina1997Todoran Ana-Corina Corina1997 Data 22 noiembrie 2014 18:08:00
Problema Stramosi Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.75 kb
#include <fstream>
#include <vector>
using namespace std;

ifstream is("stramosi.in");
ofstream os("stramosi.out");

void Stramos( int i, int j, int k );

int n, m, aux, x, a ,b;
vector<vector<int> > G;

int main()
{
    is >> n >> m;
    G.resize(n+1);
    for ( int i = 1; i <= n; i++ )
    {
        is >> x;
        G[i].push_back(x);
    }

    for ( int i = 1; i <= m; i++ )
    {
        is >> a >> b;
        Stramos( G[a][0], b, 1 );
    }
    is.close();
    os.close();
    return 0;
}

void Stramos( int i, int j, int k )
{
    if ( j == k )
    {
        os << i << '\n';
        return;
    }
    if ( i == 0 && k != j )
    {
        os << "0\n";
        return;
    }
    Stramos( G[i][0], j, k + 1 );
}