洛谷 B4575:[GESP202609 二级] 直角三角形 ← double
【题目来源】
【题目描述】
小双刚学会勾股定理,得知直角三角形的斜边的平方等于两直角边的平方和。
小双创造了直角三角形数列:数列前两项由小双指定,从第三项开始,数列中的每个数字的平方等于前两项的平方和。
……
小双给定了数列的前两项,并给定一个数列上限,想让你算算数列的第几项会超过小双给定的数列上限?
【输入格式】
输入三行,第一行一个浮点数是数列第一项,第二行一个浮点数是数列第二项,第三行一个浮点数表示数列上限。
【输出格式】
输出一个正整数,表示第几项开始会超过小双给定的数列上限。
【输入样例】
3.0
4.0
10.0
【输出样例】
6
【数据范围】
输入均为不超过 10000 的正数。
题目保证给定第一项小于第二项。
无需过度考虑浮点精度问题。
【算法分析】
注意:首先,读入初始两项 a、b 与阈值 lim,先判断 a、b 各自是否小于等于 lim,满足则分别计入计数。然后,依据 t 与 lim 的关系执行相应操作。
【算法代码】
【参考文献】

浙公网安备 33010602011771号