_3226

package
v0.0.0-...-5ea41ec Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 12, 2025 License: MIT Imports: 1 Imported by: 0

README

使两个整数相等的位更改次数

给你两个正整数 nk

你可以选择 n二进制表示 中任意一个值为 1 的位,并将其改为 0。

返回使得 n 等于 k 所需要的更改次数。如果无法实现,返回 -1。

示例 1:

**输入:**n = 13, k = 4

**输出:**2

解释:

最初,nk 的二进制表示分别为 n = (1101)2k = (0100)2

我们可以改变 n 的第一位和第四位。结果整数为 n = (0100)2 = k

示例 2:

**输入:**n = 21, k = 21

**输出:**0

解释:

nk 已经相等,因此不需要更改。

示例 3:

**输入:**n = 14, k = 13

输出:-1

解释:

无法使 n 等于 k

提示:

  • 1 <= n, k <= 106

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL