Pagini recente » Cod sursa (job #139005) | Cod sursa (job #685800) | Cod sursa (job #1272230) | Cod sursa (job #1478437) | Cod sursa (job #893356)
Cod sursa(job #893356)
#include<iostream>
#include<vector>
#include<fstream>
using namespace std;
ifstream in ("cerere.in");
ofstream out ("cerere.out");
vector<vector<int> > *a;
int stramos(int l,int k){
if(k == 0)
return l ;
(*a)[2][l] = stramos((*a)[1][l],k-1);
}
int main (){
int n,i,j,t;
in>>n;
vector<vector<int> > v(4,vector<int>(n+1));
a = &v;
for(i=1;i<=n;i++)
{
in>>v[0][i];
}
for(i=0;i<n;i++)
{
in>>j>>t;
v[1][t] = j;
}
for(i=1;i<=n ;i++)
{
if(v[0][i] == 0){
v[2][i] = -1;
}
else
if(v[3][i] == 0)
v[2][i] = stramos(i,v[0][i]);
}
for(i=1;i<=n;i++)
cout<<v[2][i]<<" ";
cout<<"\n";
//for(i=0;i<=n;i++)
//cout<<v[1][i]<<" ";
}