CF1982B.Collatz Conjecture
普及-
通过率:0%
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
最近,一年级新生 Maxim 了解到了 Collatz 猜想,但他在讲座上并没有认真听讲,所以他认为猜想中提到的是如下过程:
有一个变量 x 和一个常数 y。进行 k 次如下操作:
- 将 x 增加 1,然后
- 当 x 能被 y 整除时,不断将 x 除以 y。
注意,这两个动作在一次操作中依次进行。例如,如果 x=16,y=3,k=2,那么第一次操作后 x 变为 17,再进行一次操作后 x 变为 2,因为加一后 x=18,可以被 3 连续整除两次。
给定 x、y 和 k 的初始值,Maxim 想知道经过 k 次操作后 x 的最终值。
输入格式
每组测试包含多个测试用例。第一行包含一个整数 t(1≤t≤104)——表示测试用例的数量。接下来是每个测试用例的描述。
每个测试用例一行,包含三个整数 x、y 和 k(1≤x,k≤109,2≤y≤109)——初始变量、常数和操作次数。
输出格式
对于每个测试用例,输出一个整数——经过 k 次操作后得到的数。
输入输出样例
输入#1
13 1 3 1 2 3 1 24 5 5 16 3 2 2 2 1 1337 18 1 1 2 144133 12345678 3 10 998244353 2 998244353 998244353 123456789 998244352 998244354 998241111 998244352 998244355 2 9982443 1000000000 1000000000 1000000000
输出#1
2 1 1 2 3 1338 1 16936 1 21180097 6486 1 2
说明/提示
在第一个测试用例中,只对 x=1 进行了一次操作,结果 x 变为 2。
在第二个测试用例中,对于 x=2,一次操作中先加一再除以 y=3,结果 x 变为 1。
在第三个测试用例中,x 的变化如下:
- 第一次操作后,x=1,因为 24+1=25,25 可以被 y=5 连续整除两次。
- 第二次操作后,x=2。
- 第三次操作后,x=3。
- 第四次操作后,x=4。
- 第五次操作后,x=1。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?