-
分析
被除数一定,除数越小,商越大,所以选择合法的最小 \(3_{x}\)。
枚举指数即可,复杂度 \(\mathcal{O(\log_{3}w)}\),\(w\) 为值域 \(1e18\),可以通过本题。 -
代码
#include <iostream>
#define int long long
using namespace std;
constexpr int MAXN(1000007);
int f[MAXN];
int n;
inline void read(int &temp) { cin >> temp; }
signed main() {
ios::sync_with_stdio(false), cin.tie(nullptr), cout.tie(nullptr);
read(n);
f[0] = 1;
for (int i(1); i <= 10000; ++i) {
f[i] = f[i - 1] * 3;
if (n % f[i]) return cout << (n / f[i]) + (n % f[i] != 0) << endl, 0;
}
return 0;
}
标签:int,题解,long,read,MAXN,CF333A
From: https://www.cnblogs.com/Kazdale/p/17806070.html