ac1118.pas
来自「Ural(Acm.timus.ru)题解 By Maigo大牛」· PAS 代码 · 共 35 行
PAS
35 行
program ural1118;
var
i,j,n,t,a:longint;
m:real;
function divsum(x:longint):longint;
var
s,i:longint;
begin
s:=1;
for i:=2 to trunc(sqrt(x)) do
if x mod i=0 then inc(s,i+x div i);
if sqr(trunc(sqrt(x)))=x then
dec(s,trunc(sqrt(x)));
divsum:=s;
end;
begin
readln(i,j);
if i=1 then
writeln(1)
else begin
m:=maxlongint;
for n:=j downto i do begin
t:=divsum(n);
if t=1 then begin
writeln(n);
halt;
end;
if t/n<m then begin
m:=t/n;a:=n;
end;
end;
writeln(a);
end;
end.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?