Pagini recente » Cod sursa (job #2147524) | Cod sursa (job #1153892) | Cod sursa (job #1592145) | Cod sursa (job #2746912) | Cod sursa (job #2034825)
#include <bits/stdc++.h>
#define nmax 250005
using namespace std;
ifstream fin ("stramosi.in");
ofstream fout ("stramosi.out");
int n,m,d[nmax][25],k=1;
bool ok=1;
int main()
{
int a,b;
fin>>n>>m;
for(int i=1;i<=n;++i){
fin>>a;
d[i][1]=a;
}
while(ok){
k*=2;
ok=0;
for(int i=1;i<=n;++i)
ok=d[i][k]=d[d[i][k/2]][k/2];
if(k>250000)ok=0;
}
/*for(int i=1;i<=m;++i){
fin>>a>>b;
while(b){
int qq=__builtin_ctz(b);
int q=1<<qq;
b-=q;
a=d[a][q];
}
fout<<a<<'\n';
}*/
return 0;
}