Pagini recente » Cod sursa (job #1573986) | Cod sursa (job #700855) | Cod sursa (job #2880551) | Cod sursa (job #3277267) | Cod sursa (job #879242)
Cod sursa(job #879242)
#include<fstream>
using namespace std;
int i,j,a[250000][19],m,n,p,q,ct,nr,t;
ifstream f("stramosi.in");
ofstream g("stramosi.out");
int main()
{
f>>n>>m;
for (i=1;i<=n;i++) f>>a[1][i];
for (j=2;j<=18;j++)
for (i=1;i<=n;i++)
{
a[j][i]=a[j-1][a[j-1][i]];
}
for (t=1;t<=m;t++)
{
f>>q>>p; // al p a lui q q=i
while (p>0)
{
ct=0; nr=1;
while (nr*2<=p) { nr=nr*2; ct++; }
p=p-nr;
q=a[ct+1][q];
}
g<<q<<endl;
}
f.close();
g.close();
return 0;
}