极值问题
Description
已知m、n为整数,且满足下列两个条件:
(1)m、n∈1,2,3,……,k
(2)(n^2-mn-m^2)^2=1
对给定的k,求m^2+n^2的最大值
Sample Input
1995
Sample Output
m=987
n=1597
分析:求斐波那契数列中小于k的最大项。
代码
var
n,m,x,k:longint;
begin
readln(k);
m:=2;n:=3;x:=5;
if k<3 then
begin
writeln('m=1');
writeln('n=1');
end
else if k<5 then
begin
writeln('m=2');
writeln('n=3');
end
else begin
while m+n<=k do
begin
m:=n;
n:=x;
x:=m+n;
end;
writeln('m=',m);
writeln('n=',n);
end;
end.