CCPC2016长春D (hdu 5914 Triangle)

water,给一个数n,问从1...n的数字里最少删去多少数字让剩下的数字必不可能组成三角形。

保留的数字必定是1、2、3、5、8、13、21.....这样的数字。

 

 

 

//#define test
#include<bits/stdc++.h>
using namespace std;
const int Nmax=1e6+7;
typedef long long ll;
int _,n;
int f[10],cas=1;
int main()
{
    #ifdef test
    #endif
   // freopen("d.in","r",stdin);
    scanf("%d",&_);
    f[1]=1,f[2]=2,f[3]=3,f[4]=5,f[5]=8,f[6]=13,f[7]=21;
    while(_--){
        int ans=0;
        printf("Case #%d: ",cas++);
        scanf("%d",&n);
        if(n==1||n==2){
            printf("0\n");
            continue;
        }
        for(int i=1;i<=7;i++){
            if(n>=f[i]) ans++;
            else break;
        }
        printf("%d\n",n-ans);
    }
    return 0;
}
View Code

 

posted @ 2018-09-19 12:43  LMissher  阅读(139)  评论(0)    收藏  举报