1.题目:
2.解析:
让a,b,c回滚构造斐波那契数列 :a=b, b=c, c=a+b;
输入的数 n小于c,在b,c之间,只要 n+1 或者 n-1(贪心思想: n只加一或者只减一 )
最后再求n-b,c-n的最小值,获得最小步数
代码:
javapublic class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); int a = 0, b = 1,c = 1; int ret = 0; while(n > c){ a=b; b=c; c=a+b; if(n > b && n < c) { ret = Math.min(n-b,c-n); } } System.out.print(ret); } }
Fibonacci数列最小步数
robin_suli2024-10-04 9:01
相关推荐
pianmian119 分钟前
python数据结构基础(7)好奇龙猫2 小时前
【学习AI-相关路程-mnist手写数字分类-win-硬件:windows-自我学习AI-实验步骤-全连接神经网络(BPnetwork)-操作流程(3) 】sp_fyf_20243 小时前
计算机前沿技术-人工智能算法-大语言模型-最新研究进展-2024-11-01香菜大丸3 小时前
链表的归并排序jrrz08283 小时前
LeetCode 热题100(七)【链表】(1)oliveira-time4 小时前
golang学习2南宫生4 小时前
贪心算法习题其四【力扣】【算法学习day.21】懒惰才能让科技进步5 小时前
从零学习大模型(十二)-----基于梯度的重要性剪枝(Gradient-based Pruning)Ni-Guvara5 小时前
函数对象笔记泉崎6 小时前
11.7比赛总结