leet-code/src/main/java/leetcode/editor/cn/CountPairsWithXorInARange.md

43 lines
1.7 KiB
Markdown
Raw Normal View History

<p>给你一个整数数组 <code>nums</code> (下标 <strong>从 0 开始</strong> 计数)以及两个整数:<code>low</code><code>high</code> ,请返回 <strong>漂亮数对</strong> 的数目。</p>
<p><strong>漂亮数对</strong> 是一个形如 <code>(i, j)</code> 的数对,其中 <code>0 &lt;= i &lt; j &lt; nums.length</code><code>low &lt;= (nums[i] XOR nums[j]) &lt;= high</code></p>
<p> </p>
<p><strong>示例 1</strong></p>
<pre><strong>输入:</strong>nums = [1,4,2,7], low = 2, high = 6
<strong>输出:</strong>6
<strong>解释:</strong>所有漂亮数对 (i, j) 列出如下:
- (0, 1): nums[0] XOR nums[1] = 5
- (0, 2): nums[0] XOR nums[2] = 3
- (0, 3): nums[0] XOR nums[3] = 6
- (1, 2): nums[1] XOR nums[2] = 6
- (1, 3): nums[1] XOR nums[3] = 3
- (2, 3): nums[2] XOR nums[3] = 5
</pre>
<p><strong>示例 2</strong></p>
<pre><strong>输入:</strong>nums = [9,8,4,2,1], low = 5, high = 14
<strong>输出:</strong>8
<strong>解释:</strong>所有漂亮数对 (i, j) 列出如下:
- (0, 2): nums[0] XOR nums[2] = 13
  - (0, 3): nums[0] XOR nums[3] = 11
  - (0, 4): nums[0] XOR nums[4] = 8
  - (1, 2): nums[1] XOR nums[2] = 12
  - (1, 3): nums[1] XOR nums[3] = 10
  - (1, 4): nums[1] XOR nums[4] = 9
  - (2, 3): nums[2] XOR nums[3] = 6
  - (2, 4): nums[2] XOR nums[4] = 5</pre>
<p> </p>
<p><strong>提示:</strong></p>
<ul>
<li><code>1 &lt;= nums.length &lt;= 2 * 10<sup>4</sup></code></li>
<li><code>1 &lt;= nums[i] &lt;= 2 * 10<sup>4</sup></code></li>
<li><code>1 &lt;= low &lt;= high &lt;= 2 * 10<sup>4</sup></code></li>
</ul>
<div><div>Related Topics</div><div><li>字典树</li></div></div>\n<div><li>👍 40</li><li>👎 0</li></div>