Pagini recente » Cod sursa (job #943800) | Cod sursa (job #561609) | Cod sursa (job #2179984) | Istoria paginii home | Cod sursa (job #348712)
Cod sursa(job #348712)
#include <iostream>
#include <fstream>
using namespace std;
int v[30][250001];
int nr_v;
int pos;
void solve()
{
fstream f("test.in", ios::in);
fstream g("test.out", ios::out);
f>>nr_v;
f>>pos;
for (int i=1; i<=nr_v; ++i)
f>>v[1][i];
for (int j=2; j<=29; ++j)
for (int i=1; i<=nr_v; ++i)
v[j][i]=v[1][v[j-1][i]];
int p,q;
for (int i=1; i<=pos; ++i)
{
f>>q>>p;
if (p<=29)
g<<v[p][q]<<"\n";
else
{
while (p>29)
{
q=v[29][q];
p=p-29;
}
g<<v[p][q]<<"\n";
}
}
f.close();
g.close();
}
int main()
{
solve();
return 0;
}