Pagini recente » Cod sursa (job #1655068) | Cod sursa (job #2141572) | Cod sursa (job #2840279) | Cod sursa (job #2965931) | Cod sursa (job #2523970)
#include <fstream>
using namespace std;
ifstream fin( "stramosi.in" );
ofstream fout( "stramosi.out" );
int n, m, nod, ord, s[250010][20];
int main()
{
fin >> n >> m;
for( int i = 1; i <= n; i++ )
fin >> s[i][0] ;
for( int k = 1; k <= 17; k++ )
for( int i = 1; i <= n; i++ )
s[i][k] = s[s[i][k - 1]][k - 1];
for( int i = 1; i <= m; i++ )
{
fin >> nod >> ord;
for( int cat = 0; cat <= 17; cat ++ )
if( ord & ( 1 << cat ) )
nod = s[nod][cat];
fout << nod << '\n';
}
return 0;
}