B. 直角三角形

    传统题 1000ms 256MiB

直角三角形

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

直角三角形

题目描述

小双刚学会勾股定理,得知直角三角形的斜边的平方等于两直角边的平方和。

小双创造了直角三角形数列:数列前两项由小双指定,从第三项开始,数列中的每个数字的平方等于前两项的平方和。

例如,第一项是 3.03.0,第二项是 4.04.0,则第三项是

3.02+4.02=5.0\sqrt{3.0^2+4.0^2}=5.0

其中 x\sqrt{x} 表示 xx 的算术平方根,可以使用 C/C++/Python 标准库中对应函数计算。

小双给定了数列的前两项,并给定一个数列上限,想让你算算数列的第几项会超过小双给定的数列上限?

输入格式

输入三行:

  • 第一行一个浮点数,是数列第一项;
  • 第二行一个浮点数,是数列第二项;
  • 第三行一个浮点数,表示数列上限。

输出格式

输出一个正整数,表示第几项开始会超过小双给定的数列上限。

样例

3.0
4.0
10.0
6

样例解释

数列开始为:

3.0, 4.0, 3.02+4.02=5.03.0,\ 4.0,\ \sqrt{3.0^2+4.0^2}=5.0

随后继续按照

an=an−12+an−22a_n=\sqrt{a_{n-1}^2+a_{n-2}^2}

计算。

第 66 项开始超过给定的数列上限 10.010.0,因此输出:

6

课堂限时测(三)

未参加
状态
已结束
规则
IOI
题目
4
开始于
2026-10-6 13:15
结束于
2026-10-6 15:15
持续时间
2 小时
主持人
参赛人数
4