Cod sursa(job #384862)

Utilizator dead_knightTitei Paul Adrian dead_knight Data 21 ianuarie 2010 14:52:59
Problema Stramosi Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<cstdio>
#include<fstream>
using namespace std;

int t[250005], n, m,r,nu=1;

void intrebare(int q, int p)
{
    int i;
    for(i=1;i<=p && nu==1;i++)
    {
        if(t[q]==0)
            nu=0;
        else
            q=t[q];
    }
    if(nu==1)
        r=q;
    else
        r=0;
}
int main()
{
    freopen("stramosi.in","r",stdin);
    freopen("stramosi.out","w",stdout);
    scanf("%d%d", &n, &m);
    int i,q,p;
    for(i=1;i<=n;i++)
        scanf("%d", &t[i]);
    for(i=1;i<=m;i++)
    {
        scanf("%d%d", &q, &p);
        intrebare(q,p);
        nu=1;
        printf("%d\n",r);
    }
    return 0;
}