算法创作|PTA-求满足条件的斐波那契数

简介: 算法创作|PTA-求满足条件的斐波那契数


问题描述

斐波那契数,亦称之为斐波那契数列,指的是这样一个数列:1123581321、……,这个数列从第3项开始,每一项都等于前两项之和。求大于输入数的最小斐波那契数

输入:在一行输人一个正整数n(n>=10)

输出:在一行输出大于n的最小斐波那契数。

输入样例:10

输出样例:13


解决方案

首先使用了生成器这个python语言。生成器释义:使用了 yield 的函数被称为生成器(generator)。在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,返回 yield 的值, 并在下一次执行 next() 方法时从当前位置继续运行。使用生成器得到斐波那契数列,再将数列以列表形式显示出来。将数列中的数与输入的整数相对比,筛选出符合条件的数,再创建一个新的列表将符合条件的数放入。最后打印出新列表的第一个元素,即为符合条件的最小斐波那契数!

 


结语

在这一次的算法创作中,使用了一个比较重要的知识点:生成器。运用生成器的特点将斐波那契数列构造出来.再利用列表的特性,将数列加入到列表中,并且生成判断条件,最后根据列表支持的操作输出最后符合条件的元素。本次创作在生成数列和如何将最后结果输出遇到了较大的麻烦,逻辑性较强,后续我们会投入更多时间在PTA以及蓝桥杯的编程题的练习中,提升自己。


目录
相关文章
|
存储 算法 程序员
【五一创作】C++程序设计与算法(一) 北京大学 郭炜(下)
【五一创作】C++程序设计与算法(一) 北京大学 郭炜(下)
60 0
|
算法 Java C语言
【五一创作】C++程序设计与算法(一) 北京大学 郭炜(上)
【五一创作】C++程序设计与算法(一) 北京大学 郭炜
98 0
|
算法
代码随想录算法训练营第三十八天 | LeetCode 509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯
代码随想录算法训练营第三十八天 | LeetCode 509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯
58 0
|
算法
算法创作|反转链表问题解决方法
算法创作|反转链表问题解决方法
49 2
|
算法 Python
算法创作|规则数列计算解决方法
算法创作|规则数列计算解决方法
74 2
|
算法 Python
算法创作|随机出10道题并计算正确率问题解决方法
算法创作|随机出10道题并计算正确率问题解决方法
133 2
|
算法 Python
算法创作|罗马数字的转化
算法创作|罗马数字的转化
96 2
|
算法
算法创作|神奇语言问题解决方法
算法创作|神奇语言问题解决方法
73 1
|
算法 索引
算法创作 | 0到n-1中缺失的数字问题解决方法
算法创作 | 0到n-1中缺失的数字问题解决方法
104 0
|
算法 Python
算法创作|找出游戏的获胜者问题解决方法
算法创作|找出游戏的获胜者问题解决方法
154 0