CF1368A.C+=
入门
通过率:0%
时间限制:2.00s
内存限制:512MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Leo has developed a new programming language C+=. In C+=, integer variables can only be changed with a "+=" operation that adds the right-hand side value to the left-hand side variable. For example, performing "a += b" when a = 2, b = 3 changes the value of a to 5 (the value of b does not change).
In a prototype program Leo has two integer variables a and b, initialized with some positive values. He can perform any number of operations "a += b" or "b += a". Leo wants to test handling large integers, so he wants to make the value of either a or b strictly greater than a given value n. What is the smallest number of operations he has to perform?
Leo 开发了一种新的编程语言 C+=。在 C+= 中,整型变量只能通过 += 运算进行修改,该运算将右操作数值加到左操作数变量上。例如,当 a = 2、b = 3 时执行 a += b,a 的值变为 5(b 的值不变)。
在 Leo 的一个原型程序中,有两个整型变量 a 和 b,初始值均为正整数。他可以执行任意多次操作 "a += b" 或 "b += a"。Leo 希望测试对大整数的处理能力,因此他希望使 a 或 b 的值严格大于给定值 n。他至少需要执行多少次操作?
输入格式
The first line contains a single integer T (1≤T≤100) — the number of test cases.
Each of the following T lines describes a single test case, and contains three integers a,b,n (1≤a,b≤n≤109) — initial values of a and b, and the value one of the variables has to exceed, respectively.
第一行包含一个整数 T(1≤T≤100)—— 测试用例的数量。
接下来的 T 行,每行描述一个测试用例,包含三个整数 a,b,n(1≤a,b≤n≤109)—— 分别为变量 a 和 b 的初始值,以及其中某个变量需超过的阈值。
输出格式
For each test case print a single integer — the smallest number of operations needed. Separate answers with line breaks.
对于每个测试用例,输出一个整数——所需的最少操作次数。各答案之间用换行符分隔。
输入输出样例
输入#1
2 1 2 3 5 4 100
输出#1
2 7
说明/提示
In the first case we cannot make a variable exceed 3 in one operation. One way of achieving this in two operations is to perform "b += a" twice.
在第一种情况下,我们无法通过一次操作使变量超过 3。一种通过两次操作实现该目标的方法是执行两次 “b += a”。
输入解题思路,AI测评打分。不知道怎么写?