Cod sursa(job #1364932)
| Utilizator | Data | 27 februarie 2015 21:38:11 | |
|---|---|---|---|
| Problema | Stramosi | Scor | 90 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.46 kb |
#include<fstream>
using namespace std;
ifstream f("stramosi.in");
ofstream g("stramosi.out");
int q,p,j,n,m,i,t[250001],d[250001][19];
int main()
{
f>>n>>m;
for(i=1;i<=n;++i)
{ f>>t[i]; d[i][0]=t[i]; }
for(j=1;j<=17;++j)
for(i=1;i<=n;++i)
d[i][j]=d[d[i][j-1]][j-1];
for(i=1;i<=m;++i)
{
f>>q>>p;
for(j=0;j<=17;++j)
if(p&(1<<j))
q=d[q][j];
g<<q<<'\n';
}
return 0;
}
