Cod sursa(job #584996)

Utilizator stef93Stefan Gilca stef93 Data 27 aprilie 2011 18:38:25
Problema Stramosi Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include<fstream>
using namespace std;

int n, m;
int s[33][250003];
int main()
{
    int i, j;
    fstream in,out;
    in.open("stramosi.in",ios::in);
    out.open("stramosi.out",ios::out);
    in>>n>>m;

    for(i=1;i<=n;i++)
        in>>s[0][i];

    for(i=1;(1<<i)<n;i++)
    for(j=1;j<=n;j++)
    s[i][j]=s[i-1][s[i-1][j]];

    int x,y,k;
    for(j=1;j<=m;j++)
    {
        in>>x>>y;
        i = 0;
        while(y)
        {
            if(y&1)
            x=s[i][x];
            y/=2;
        i++;
        }
        out<<x<<'\n';
    }

    return 0;
}