Pagini recente » Cod sursa (job #2183272) | Cod sursa (job #2773837) | Cod sursa (job #26989) | Cod sursa (job #1990401) | Cod sursa (job #2755067)
#include <fstream>
using namespace std;
int v[250005];
ifstream fin("stramosi.in");
ofstream fout("stramosi.out");
int N, M, Q, P, r, nr=0;
int main()
{
fin >>N>>M;
for(int i=1;i<=N;++i)
{
fin >> v[i];
if(v[i]==i-1)
nr++;
}
if(nr==N)
{
for(int i=1;i<=M;++i)
{
fin >> Q >> P;
if(Q >= P)
fout << Q-P << '\n';
else
fout << 0 << '\n';
}
}
else
{
for(int i=1; i<=M; ++i)
{
fin >> Q >> P;
r=Q;
while(P>0 && r>0)
{
r = v[r];
P--;
}
fout << r << '\n';
}
}
return 0;
}