Pagini recente » Cod sursa (job #613691) | Cod sursa (job #1801710) | Cod sursa (job #2272626) | Cod sursa (job #150464) | Cod sursa (job #268824)
Cod sursa(job #268824)
#include<stdio.h>
unsigned long v[250010],mat[250010][10];
int main()
{
FILE *fi,*fo;
fi=fopen("stramosi.in","r");
fo=fopen("stramosi.out","w");
unsigned long n,m,i,p,q,aux,j;
fscanf(fi,"%lu",&n);
fscanf(fi,"%lu",&m);
for(i=1;i<=n;i++)fscanf(fi,"%lu",&v[i]);
for(i=1;i<=n;i++)
{
aux=i;
for(j=1;j<=10;j++)
{
aux=v[aux];
if(!aux)break;
mat[i][j]=aux;
}
}
for(;m--;)
{
fscanf(fi,"%lu %lu",&q,&p);
for(i=1;i<=p/2;i++)if(q)q=mat[q][2];
if(q)if(p%2)q=mat[q][p%2];
fprintf(fo,"%lu\n",q);
}
return 0;
}