程序有点长,麻烦了
题目是http://www.vijos.cn/Problem_Show.asp?id=1237
var a:array[1..29999] of longint;
c:array[1..30000,1..30000] of extended;
n,i,j,k,m,temp:longint;
s:extended;
begin
{N+};
readln(n);
for i:=1 to n do read(a);
for i:=1 to n-1 do
begin
k:=i;
for j:=i to n do
if a[k]>a[j] then k:=j;
temp:=a[k]; a[k]:=a; a:=temp;
end;
if a[1]/a[n]>0.237 then begin
s:=abs(a[1]/a[n]-0.6180339887498949);
for i:=1 to n-1 do
for j:=i+1 to n do
if aa[j] then begin
c[i,j]:=abs(a/a[j]-0.6180339887498949);
if s>c[i,j] then begin
s:=c[i,j];
k:=i; m:=j;
end;
end;
end
else if a[1]/a[2]>0.37 then begin
s:=abs(a[1]/a[2]-0.6180339887498949);
for i:=1 to n-1 do
for j:=i to n do
if aa[j] then begin
c[i,j]:=abs(a/a[j]-0.6180339887498949);
if s>c[i,j] then begin
s:=c[i,j];
k:=i; m:=j;
end;
end;
end
elsebegin
s:=1000;
for i:=1 to n do
for j:=1 to n do
if (aa[j]) and (a/a[j]c[i,j] then begin
s:=c[i,j];
k:=i; m:=j;
end;
end;
end;
writeln(a[k]);
writeln(a[m]);
end.
我试啦,开到40000都不行
哪里改为int64
|