当前位置:网站首页>Simulation volume leetcode [general] 1414 The minimum number of Fibonacci numbers with a sum of K
Simulation volume leetcode [general] 1414 The minimum number of Fibonacci numbers with a sum of K
2022-07-06 06:18:00 【Encounter simulation volume】
Summary : Simulation volume Leetcode Summary of questions
1414. And for K The minimum number of Fibonacci Numbers
Here are the numbers k , Please return and for k The minimum number of Fibonacci numbers , among , Each Fibonacci number can be used many times .
Fibonacci numbers are defined as :
F1 = 1
F2 = 1
Fn = Fn-1 + Fn-2 , among n > 2 .
Data guarantee for a given k , A feasible solution must be found .
Example 1:
Input :k = 7
Output :2
explain : Fibonacci number is :1,1,2,3,5,8,13,……
about k = 7 , We can get 2 + 5 = 7 .
Example 2:
Input :k = 10
Output :2
explain : about k = 10 , We can get 2 + 8 = 10 .
Example 3:
Input :k = 19
Output :3
explain : about k = 19 , We can get 1 + 5 + 13 = 19 .
Tips :
1 <= k <= 10^9
source : Power button (LeetCode)
link :https://leetcode-cn.com/problems/find-the-minimum-number-of-fibonacci-numbers-whose-sum-is-k
Copyright belongs to the network . For commercial reprint, please contact the official authority , Non-commercial reprint please indicate the source .
Code :
from leetcode_python.utils import *
class Solution:
def findMinFibonacciNumbers(self, k: int) -> int:
f = [1,1]
while f[-1]<k:f.append(f[-1]+f[-2])
res,i = 0,len(f)-1
while k:
if k>=f[i]:
k-=f[i]
res+=1
i-=1
return res
def test(data_test):
s = Solution()
data = data_test # normal
# data = [list2node(data_test[0])] # list turn node
return s.getResult(*data)
def test_obj(data_test):
result = [None]
obj = Solution(*data_test[1][0])
for fun, data in zip(data_test[0][1::], data_test[1][1::]):
if data:
res = obj.__getattribute__(fun)(*data)
else:
res = obj.__getattribute__(fun)()
result.append(res)
return result
if __name__ == '__main__':
datas = [
[],
]
for data_test in datas:
t0 = time.time()
print('-' * 50)
print('input:', data_test)
print('output:', test(data_test))
print(f'use time:{
time.time() - t0}s')
remarks :
GitHub:https://github.com/monijuan/leetcode_python
CSDN Summary : Simulation volume Leetcode Summary of questions
You can add QQ Group communication :1092754609
leetcode_python.utils See the description on the summary page for details
First brush questions , Then generated by script blog, If there is any mistake, please leave a message , I see it will be revised ! thank you !
边栏推荐
- Coordinatorlayout+nestedscrollview+recyclerview pull up the bottom display is incomplete
- Buuctf-[gxyctf2019] no dolls (xiaoyute detailed explanation)
- LeetCode 729. 我的日程安排表 I
- 【C语言】qsort函数
- 黑猫带你学UFS协议第4篇:UFS协议栈详解
- Linux regularly backs up MySQL database
- Reading notes of effective managers
- keil MDK中删除添加到watch1中的变量
- php使用redis实现分布式锁
- win10无法操作(删除、剪切)文件
猜你喜欢
E - food chain
[web security] nodejs prototype chain pollution analysis
P问题、NP问题、NPC问题、NP-hard问题详解
【Postman】测试(Tests)脚本编写和断言详解
Customize the gateway filter factory on the specified route
B - The Suspects
Redis 核心技术与实战之 基本架构:一个键值数据库包含什么?
Overview of three core areas of Mathematics: algebra
黑猫带你学eMMC协议第10篇:eMMC读写操作详解(read & write)
GTSAM中李群的运用
随机推荐
Manage configuration using Nacos
LeetCode 732. 我的日程安排表 III
VINS-Mono: A Robust and Versatile Monocular Visual-Inertial State Estimator
【C语言】字符串左旋
还在为如何编写Web自动化测试用例而烦恼嘛?资深测试工程师手把手教你Selenium 测试用例编写
Full link voltage measurement: building three models
数字三角形模型 AcWing 1015. 摘花生
MFC 动态创建的对话框及改变控件的大小和位置
GTSAM中李群的运用
Selenium source code read through · 9 | desiredcapabilities class analysis
Fault, error, failure of functional safety
Manhattan distance sum - print diamond
Qt:无法定位程序输入点XXXXX于动态链接库。
【API接口工具】postman-界面使用介绍
把el-tree选中的数组转换为数组对象
Buuctf-[bjdctf2020]zjctf, but so (xiaoyute detailed explanation)
On weak network test of special test
RestTemplate、Feign实现Token传递
Coordinatorlayout+nestedscrollview+recyclerview pull up the bottom display is incomplete
【无App Push 通用测试方案