#CF1646C. 阶乘与二的幂
阶乘与二的幂
阶乘与二的幂
- 时间限制:3 秒
- 内存限制:256 MiB
题目描述
如果一个数是 的幂或阶乘,则称其为“强大数”。换句话说,如果存在非负整数 ,使得 或 ,那么数 就是强大数(其中 ,特别地,)。例如,、 和 都是强大数,因为 ,,,但 、 或 不是强大数。
给定一个正整数 ,请你求出最小的正整数 ,使得 能表示为 个互不相同的强大数之和。如果不存在这样的 ,请输出 。
输入格式
每组测试数据包含多组测试用例。第一行包含一个整数 (),表示测试用例的数量。
接下来每组测试用例仅一行,包含一个整数 ()。
输出格式
对于每组测试用例,输出一行答案。
如果 不能表示为若干个互不相同的强大数之和,输出 。
否则,输出一个正整数,表示最小可能的 。
样例输入 1
4
7
11
240
17179869184
样例输出 1
2
3
4
1
数据范围
对于所有数据,,。相同数值的强大数只能使用一次。
| 子任务编号 | 分值 | 特殊限制 |
|---|---|---|
| 1 | 30 | |
| 2 | ||
| 3 | 40 | 无特殊限制 |