Cod sursa(job #1329839)
Utilizator | Data | 29 ianuarie 2015 21:45:32 | |
---|---|---|---|
Problema | Text | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.42 kb |
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("perm2.in");
ofstream g("perm2.out");
int a[20000],b[20000];
int main(){
int n,i;
int aux,ok=1,nr=0;
f>>n;
for(i=1;i<=n;i++){
f>>a[i];b[i]=a[i];
if(i!=a[i])
ok=0;}
if(ok==1)
g<<1;
else{
do{nr++;
ok=1;
for(i=1;i<=n;i++){
a[i]=b[a[i]];
if(a[i]!=i)
ok=0;}
}
while(ok==0);
g<<nr+1;}
return 0;}