#HK5141. 「CCO 2025」Balanced Integer
「CCO 2025」Balanced Integer
题目描述
译自 CCO 2025 Day1 T3「Balanced Integer」。
由于 CCO 经常使用整数,Alice 需要学习有关整数的知识!一个正整数 可以用进制 表示为序列 ,如果满足以下条件:
- 每一位数字 在 到 之间(包含两端)。
- 。
- $n = d_{m-1} \times b^{m-1} + d_{m-2} \times b^{m-2} + \cdots + d_{1} \times b^{1} + d_{0} \times b^{0}$。
例如,整数 在 进制下为序列 ,因为 $2025 = 5 \times 19^{2} + 11 \times 19^{1} + 11 \times 19^{0}$。
一个整数 如果在进制 下表示时,各位数字的平均值为 ,则称 是 -平衡的。例如, 是 -平衡的,因为 。
Alice 能轻松找到 -平衡的整数。然而,她在寻找同时在多个进制下平衡的整数时遇到了困难。给定 和 ,请帮助 Alice 找到最小的整数 ,满足:
- 对于所有 , 是 -平衡的。
- 。
输入格式
第一行包含两个用空格分隔的整数 和 。
保证答案不会超过 。
输出格式
输出问题描述中的最小整数 。
4 100
141
在 进制下为 。各位数字的平均值为 。因此, 是 2-平衡的。
在 进制下为 。各位数字的平均值为 。因此, 是 -平衡的。
在 进制下为 。各位数字的平均值为 。因此, 是 -平衡的。
最后,。
7 10000000000
16926961207710
数据范围与提示
你可以使用以下函数作为你的代码的一部分。
// Important: If x is 0, the result is undefined.
int base_2_length(unsigned long long x) {
return 64-__builtin_clzll(x);
}
int base_2_sum(unsigned long long x) {
return __builtin_popcountll(x);
}
详细子任务附加限制及分值如下表所示。
| 子任务 | 分值 | 的限制 | 的限制 |
|---|---|---|---|
| 无 | |||
| 无 | |||