2013年9月27日 星期五

TIOJ 1751 Ch1. Section 1. 愛的啟程

[沒啥]
卡了一下,原來可能有負整數= =



#include<stdio.h>
#include<stdlib.h>
#define FIBMAX 45
int fibdp[FIBMAX+1];
int main()
{
 int inp;int T;
 fibdp[0]=1;
 fibdp[1]=2;
 fibdp[FIBMAX]=2147483647;
 for(int lx=2;lx<FIBMAX;lx++)
  fibdp[lx]=fibdp[lx-1]+fibdp[lx-2];
 //for(int lx=0;lx<FIBMAX;lx++)
 // printf("%d\n",fibdp[lx]);
 scanf("%d",&T);
 for(int lT=1;lT<=T;lT++)
 {
  scanf("%d",&inp);
  int cnt=0;
  if(inp<=0)
  {
   printf("iyada~\n");
   continue;
  }
  while(inp>0)
  {
   for(int i=0;i<FIBMAX;i++)
   {
    if((fibdp[i]<=inp)&&((i==FIBMAX-1)||(fibdp[i+1]>inp)))
    {
     cnt++;
     inp-=fibdp[i];
    }
   }
  }

  printf("%d\n",cnt);
 }
 return 0;
}

沒有留言:

張貼留言