2009-05-13 19:07:44來源不明
極值問題
作法:數學(費氏數列)
(n*n-m*n-m*m)^2=1
(n^2-mn+1/4*m^2-5/4*m^2)^2=1
[(n-1/2*m)^2-sqrt(5)/2*m^2]^2=1
[(n-(1/2+sqrt(5)/2)*m)*(n-(1/2-sqrt(5)/2)*m)]^2=1
大致上就是這樣 這樣的形式符合費氏數列(解遞迴解時候的公式...因為我還太弱了 就這樣...)
/**********************************************************/
#include<stdio.h>
#include<stdlib.h>
main()
{
int k;
int math[50]={0},a;
math[0]=1;math[1]=1;
for(a=2;a<50;a++)
math[a]=math[a-1]+math[a-2];
while(scanf("%d",&k)==1)
{
for(a=1;a<50;a++)
if(math[a]>k) break;
printf("%d %d\n",math[a-2],math[a-1]);
}
return 0;
}
下一篇:矩形對角線