题解:B3855 [语言月赛 202309] 扶苏迭代

· · 题解

Solution

这里提供一种不用开 long long 的做法。

可以发现题目中给的式子能化简成 x_i=\lfloor\dfrac{x_{i-1}}a\rfloor+1。

这样就不用计算 x_{i-1}+a 了,也就不用开 long long 了。

按照题意模拟即可。

Code

#include<bits/stdc++.h>
using namespace std;
int main()
{
    int T,x,a;
    scanf("%d",&T);
    while (T--) {
        scanf("%d%d",&x,&a),printf("%d",x);
        while (x!=x/a+1) x=x/a+1,printf(" %d",x);
        putchar('\n');
    }
    return 0;
}