HDU - 5914 Triangle
伪菲波那切数列
Mr. Frog has n sticks, whose lengths are 1,2, 3⋯n respectively. Wallice is a bad man, so he does not want Mr. Frog to form a triangle with three of the sticks here. He decides to steal some sticks! Output the minimal number of sticks he should steal so that Mr. Frog cannot form a triangle with
any three of the remaining sticks.
Input
The first line contains only one integer T (T≤20), which indicates the number of test cases.
For each test case, there is only one line describing the given integer n (1≤n≤20).
Output
For each test case, output one line “Case #x: y”, where x is the case number (starting from 1), y is the minimal number of sticks Wallice should steal.
Sample Input
3
4
5
6
Sample Output
Case #1: 1
Case #2: 1
Case #3: 2
#include<iostream>
#include<cstdio>
#include<cmath>
#include<algorithm>
#include<cstring>
#include<string>
using namespace std;
int main(){
int t,i,n,m,ans;
scanf("%d",&t);
ans=0;
while(t--){
ans++;
scanf("%d",&n);
if(n<=3){
m=n;
}
else{
m=0;
for(i=1;i<=n;i++){
if(i==1||i==2||i==3||i==5||i==8||i==13){
m++;
}
}
}
printf("Case #%d: %d\n",ans,n-m);
}
return 0;
}