Pagini recente » Cod sursa (job #489564) | Cod sursa (job #323918) | Monitorul de evaluare | Cod sursa (job #2053792) | Cod sursa (job #2975129)
#include <fstream>
#include <iostream>
using namespace std;
int v[19][250005],n,m,p,q;
int main()
{
ifstream f ("stramosi.in");
ofstream g ("stramosi.out");
f>>n>>m;
for (int i=1; i<=n; i++)
f>>v[0][i];
for (int put2=1; put2<=18; put2++)
{
for (int i=1; i<=n; i++)
v[put2][i]=v[put2-1][v[put2-1][i]];
}
for (int i=1; i<=m; i++)
{
f>>p>>q;
for (int put2=0;put2<=18;put2++)
{
if (q & (1<<put2))
p=v[put2][p];
}
g<<p<<'\n';
}
}