Find the Minimum Number of Fibonacci Numbers Whose Sum Is K LeetCode solution in C++
1class Solution {2public:3int findMinFibonacciNumbers(int k) {4vector<int> fibb;5int a = 1;6int b = 1;7fibb.push_back(a);8fibb.push_back(b);9int next = a + b;1011while (next <= k) {12fibb.push_back(next);13a = b;14b = next;15next = a + b;16}1718int res = 0;19int j = fibb.size() - 1;20while (j >= 0 and k > 0) {21if (fibb[j] <= k) {22k -= fibb[j];23res++;24}25j--;26}2728return res;29}30};