Pagini recente » Cod sursa (job #1734839) | Cod sursa (job #2358261) | Cod sursa (job #3227175) | Cod sursa (job #157672) | Cod sursa (job #234072)
Cod sursa(job #234072)
// stramosi.cpp : Defines the entry point for the console application.
//
#include <stdio.h>
int main()
{
FILE *f1,*f2;
f1=fopen("stramosi.in","r");
f2=fopen("stramosi.out","w");
int a,b,n,m,i;
int e[250004];
e[0]=0;
fscanf(f1,"%d %d",&n,&m);
for(i=1;i<=n;i++)
{
fscanf(f1,"%d",&e[i]);
}
for(i=1;i<=m;i++)
{
fscanf(f1,"%d %d",&a,&b);
switch(b&7)
{
case 1 :
{
a=e[a];
b--;
break;
}
case 2 :
{
a=e[e[a]];
b-=2;
break;
}
case 3 :
{
a=e[e[e[a]]];
b-=3;
break;
}
case 4 :
{
a=e[e[e[e[a]]]];
b-=4;
break;
}
case 5 :
{
a=e[e[e[e[e[a]]]]];
b-=5;
break;
}
case 6 :
{
a=e[e[e[e[e[e[a]]]]]];
b-=6;
break;
}
case 7 :
{
a=e[e[e[e[e[e[e[a]]]]]]];
b-=7;
break;
}
}
while(a && b)
{
a=e[e[e[e[e[e[e[e[a]]]]]]]];
b-=8;
}
fprintf(f2,"%d\n",a);
}
fclose(f1);
fclose(f2);
return 0;
}