Mai intai trebuie sa te autentifici.
Cod sursa(job #2753789)
| Utilizator | Data | 24 mai 2021 14:13:20 | |
|---|---|---|---|
| Problema | Stramosi | Scor | 70 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.92 kb |
#include <iostream>
#include<bits/stdc++.h>
using namespace std;
ifstream fin("stramosi.in");
ofstream fout("stramosi.out");
struct nod
{
int indice;
nod* stramos;
};
nod* v[300000];
int main()
{
int n,m,x,j;
fin>>n>>m;
for(int i=1;i<=n;i++)
{
v[i] = new nod();
fin>>x;
if(x==0)
v[i] ->stramos = NULL;
else
v[i]->stramos = v[x];
v[i]->indice = i;
}
nod* aux;
int ok;
for(int i=0;i<m;i++)
{
fin>>j>>x;
aux = v[j];
while(x>=1)
{
if(aux->stramos!=NULL)
{
aux = aux->stramos;
x--;
}
else
{
fout<<"0\n";
break;
}
}
if(x == 0)
fout<<aux->indice<<"\n";
}
return 0;
}
