package
0.0.0-20241113083646-cc50aed9d7d0
Repository: https://github.com/godcong/leetcode.git
Documentation: pkg.go.dev

# README

价值和小于等于 K 的最大数字

给你一个整数 k 和一个整数 x 。整数 num 的价值是它的二进制表示中在 x2x3x 等位置处 设置位 的数目(从最低有效位开始)。下面的表格包含了如何计算价值的例子。

xnumBinary RepresentationPrice
113000001****1013
2130000011011
22330111010013
3130000011011
33621011010102

num 的 累加价值 是从 1 到 num 的数字的 价值。如果 num 的累加价值小于或等于 k 则被认为是 廉价 的。

请你返回** 最大** 的廉价数字。

示例 1:

输入:k = 9, x = 1
输出:6
解释:由下表所示,6 是最大的廉价数字。
xnumBinary RepresentationPriceAccumulated Price
1100111
1201012
1301****124
1410015
1510127
161****1029
17111312

示例 2:

输入:k = 7, x = 2
输出:9
解释:由下表所示,9 是最大的廉价数字。
xnumBinary RepresentationPriceAccumulated Price
21000100
22001011
23001112
24010002
25010102
26011013
27011114
28100015
29100116
210101028

提示:

  • 1 <= k <= 1015
  • 1 <= x <= 8