在线测试本题
题目描述
我们已经知道 2 进制到 10 进制表示方法,与 16 进制类似,我们考虑 11~36 进制,即用 a 代表 10 ,b 代表 11 等。
我们想知道给定一个 10 进制数 n n n,其在 2 ~36 进制下的所有进制表示中,含有 1 的数量最多是多少。
比如 4 在二进制下表示为 ( 100 ) 2 (100)_2 (100)2,只有一个 1。
输入描述
在一行上输入一个整数 n n n( 1 ≤ n ≤ 3 × 1 0 5 1 \leq n \leq 3 \times 10^5 1≤n≤3×105)代表给定的十进制数。
输出描述
在一行上输出一个整数表示答案。
示例 1
输入
4
输出
2
说明
在 3 进制下,4 为 ( 11 ) 3 (11)_3 (11)3,有两个 1 。
示例 2
输入
11
输出
3
说明
在 2 进制下,11 有三个 1。
题解
题意是要求 n n n 在 m m m 进制中有多少个 1 1 1。
按照题意暴力进行模拟就行,总体复杂度为 O ( 35 × log ( n ) ) O(35 \times \log(n)) O(35×log(n))
代码见网站内部(文章顶部):塔子哥的文字题解