#P12968. [CCO 2025] Balanced Integer
[CCO 2025] Balanced Integer
Description
由于 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}$。
如果一个整数 在基数为 时,其各位数字的平均值等于 ,则称 是 -平衡 的。例如, 是 19-平衡 的,因为 。
Alice 可以轻松找到 19-平衡 的整数,但她难以找到同时在多个基数下平衡的整数。给定 和 ,请帮助 Alice 找到最小的整数 ,满足以下条件:
- 在 所有 的基数下都是 -平衡的。
- 。
Input Format
第一行输入包含两个以空格分隔的整数 和 ()。
保证答案不超过 。
Output Format
输出题目描述中所要求的最小整数 。
4 100
141
7 10000000000
16926961207710
Hint
样例 1 解释
在基数为 时表示为 ,各位数字的平均值为:
$$\frac{1 + 0 + 0 + 0 + 1 + 1 + 0 + 1}{8} = 0.5 = \frac{2 - 1}{2}.$$因此, 是 2-平衡 的。
在基数为 时表示为 ,各位数字的平均值为:
$$\frac{1 + 2 + 0 + 2 + 0}{5} = 1 = \frac{3 - 1}{2}.$$因此, 是 3-平衡 的。
在基数为 时表示为 ,各位数字的平均值为:
因此, 是 4-平衡 的。
最后,。
你可以在解题时使用以下代码片段:
// 注意:如果 x 为 0,结果未定义。
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);
}
| 分值 | 的范围 | 的范围 |
|---|---|---|
| 2 分 | ||
| 6 分 | ||
| 2 分 | 无限制 | |
| 9 分 | ||
| 4 分 | 无限制 | |
| 2 分 |
京公网安备 11011102002149号