⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ac1024.pas

📁 uralcode
💻 PAS
字号:
program ural1024;
const
  maxn=1000;
var
  p:array[1..maxn]of integer;
  n,i,l:integer;
  ans:longint;
procedure chain(x:integer);
  var
    t:integer;
  begin
    l:=0;
    repeat
      inc(l);
      t:=p[x];
      p[x]:=0;
      x:=t;
    until p[x]=0;
  end;
function gcd(a,b:longint):longint;
  var
    t:longint;
  begin
    if a<b then begin t:=a;a:=b;b:=t;end;
    while b>0 do begin
      t:=a mod b;a:=b;b:=t;
    end;
    gcd:=a;
  end;
begin
  readln(n);
  for i:=1 to n do
    read(p[i]);

  ans:=1;
  for i:=1 to n do
    if p[i]>0 then begin
      chain(i);
      ans:=ans div gcd(ans,l)*l;
    end;

  writeln(ans);
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -