Pagini recente » Cod sursa (job #1996268) | Cod sursa (job #3270043) | Cod sursa (job #22963) | Cod sursa (job #639534) | Cod sursa (job #227812)
Cod sursa(job #227812)
#include<stdio.h>
#define nmax 250001
int s[nmax][20],m,n;
FILE *f=fopen("stramosi.in","r"),*g=fopen("stramosi.out","w");
int main()
{
fscanf(f,"%d%d",&n,&m);
for(int i=1;i<=n;++i)
fscanf(f,"%d",&s[0][i]);
int ok=1,j=1;
for (j=1;j<=16;++j)
// {//
// ok=0;
for(int i=1;i<=n;++i)
// {
s[j][i]=s[j-1][s[j-1][i]];
// if (s[j][i]!=0)
// ok=1;
//}
//j++;
// }/
int a,b;
for(j=1;j<=m;++j)
{
fscanf(f,"%d%d",&a,&b);
int t=0;
while (b!=0)
{
if (b%2==1)
a=s[t][a];
b/=2;
t++;
}
fprintf(g,"%d\n",a);
}
return 0;
}