Description
Description
Editorial
Editorial
Solutions
Solutions
Submissions
Submissions
Hard

You are given an integer array nums of length n. You may rearrange its elements to form any perm.

Define an array power of length 15. For each 0 <= i < 15, power[i] is the largest integer j, where 0 <= j <= n, such that the first j elements of perm all have the (14 - i)th bit .

Bit positions are indexed from right to left, starting with the 0th bit.

Return the possible power array.

 

Example 1:

Input: nums = [7,5]

Output: [0,0,0,0,0,0,0,0,0,0,0,0,2,1,2]

Explanation:

Choose perm = [7, 5].

  • Both elements have bit 2 set, so power[12] = 2.
  • The first element has bit 1 set, but the second does not, so power[13] = 1.
  • Both elements have bit 0 set, so power[14] = 2.

All higher bits are unset in the first element, so the remaining entries are 0.

Example 2:

Input: nums = [3,1,7]

Output: [0,0,0,0,0,0,0,0,0,0,0,0,1,2,3]

Explanation:

Choose perm = [7, 3, 1].

  • The first element has bit 2 set, but the second does not, so power[12] = 1.
  • The first two elements have bit 1 set, but the third does not, so power[13] = 2.
  • All three elements have bit 0 set, so power[14] = 3.

All higher bits are unset in the first element, so the remaining entries are 0.

 

Constraints:

  • 1 <= nums.length <= 5 * 104
  • 0 <= nums[i] < 215
 
Code
Code
Testcase
Testcase
Test Result
Test Result