题目:
分析:
本题采用贪心算法,具体说就是找出小于k中最大的斐波那契数字,然后减去,然后再找,直到k=0。
代码:
class Solution {
public int findMinFibonacciNumbers(int k) {
int sum=0;
while(k!=0){
k=k-find(k);
sum++;
}
return sum;
}
public int find(int k){
int a=1,b=1;
while(a+b<=k){
b=a+b;
a=b-a;
}
return b;
}
}