Pagini recente » Cod sursa (job #1374621) | Cod sursa (job #2945511) | Cod sursa (job #135369) | Cod sursa (job #3210857) | Cod sursa (job #70382)
Cod sursa(job #70382)
#include<stdio.h>
long n,m,w[300001],a,c,q;
void rezolvare(long e, long q)
{
if (q==c-1 || w[e]==0)
printf("%ld\n",w[e]);
else if (q+1==c-1 || w[w[e]]==0)
printf("%ld\n",w[w[e]]);
else if (q+2==c-1 || w[w[w[e]]]==0)
printf("%ld\n",w[w[w[e]]]);
else rezolvare(w[w[w[e]]],q+=3);
}
void citire()
{
freopen("stramosi.in","r",stdin);
scanf("%ld%ld", &n, &m);
for (long i=1; i<=n; i++)
scanf("%ld", &w[i]);
for (long i=1; i<=m; i++)
{
scanf("%ld%ld", &a, &c);
rezolvare(a,0);
}
fclose(stdin);
}
int main()
{
freopen("stramosi.out","w",stdout);
citire();
fclose(stdout);
return 0;
}