Cod sursa(job #1207704)

Utilizator valen.valentinValentin Valeanu valen.valentin Data 13 iulie 2014 17:30:41
Problema Stramosi Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.48 kb
#include<fstream>
#include<algorithm>
using namespace std;
 
int xx,i,j,n,m,x,y,t[21][300005];
 
int main()
{
  ifstream cin("stramosi.in");
  ofstream cout("stramosi.out"); 
   
  cin>>n>>m;
  for(i=1;i<=n;i++) cin>>t[0][i];
   
  for(i=1;i<=18;i++)
    for(j=1;j<=n;j++)
    t[i][j]=t[i-1][t[i-1][j]];
     
  while(m--)
  {
    cin>>x>>y;
    xx=0;
    while(y!=0)
    {
      if(y%2==1) x=t[xx][x];
      y/=2;
      xx++;          
    }
    cout<<x<<'\n';
  }   
   
 return 0;  
}