Welcome to Subscribe On Youtube

3649. Number of Perfect Pairs

Description

You are given an integer array nums.

A pair of indices (i, j) is called perfect if the following conditions are satisfied:

  • i < j
  • Let a = nums[i], b = nums[j]. Then:
    • min(\|a - b\|, \|a + b\|) <= min(\|a\|, \|b\|)
    • max(\|a - b\|, \|a + b\|) >= max(\|a\|, \|b\|)

Return the number of distinct perfect pairs.

Note: The absolute value \|x\| refers to the non-negative value of x.

 

Example 1:

Input: nums = [0,1,2,3]

Output: 2

Explanation:

There are 2 perfect pairs:

(i, j) (a, b) min(\|a − b\|, \|a + b\|) min(\|a\|, \|b\|) max(\|a − b\|, \|a + b\|) max(\|a\|, \|b\|)
(1, 2) (1, 2) min(\|1 − 2\|, \|1 + 2\|) = 1 1 max(\|1 − 2\|, \|1 + 2\|) = 3 2
(2, 3) (2, 3) min(\|2 − 3\|, \|2 + 3\|) = 1 2 max(\|2 − 3\|, \|2 + 3\|) = 5 3

Example 2:

Input: nums = [-3,2,-1,4]

Output: 4

Explanation:

There are 4 perfect pairs:

(i, j) (a, b) min(\|a − b\|, \|a + b\|) min(\|a\|, \|b\|) max(\|a − b\|, \|a + b\|) max(\|a\|, \|b\|)
(0, 1) (-3, 2) min(\|-3 - 2\|, \|-3 + 2\|) = 1 2 max(\|-3 - 2\|, \|-3 + 2\|) = 5 3
(0, 3) (-3, 4) min(\|-3 - 4\|, \|-3 + 4\|) = 1 3 max(\|-3 - 4\|, \|-3 + 4\|) = 7 4
(1, 2) (2, -1) min(\|2 - (-1)\|, \|2 + (-1)\|) = 1 1 max(\|2 - (-1)\|, \|2 + (-1)\|) = 3 2
(1, 3) (2, 4) min(\|2 - 4\|, \|2 + 4\|) = 2 2 max(\|2 - 4\|, \|2 + 4\|) = 6 4

Example 3:

Input: nums = [1,10,100,1000]

Output: 0

Explanation:

There are no perfect pairs. Thus, the answer is 0.

 

Constraints:

  • 2 <= nums.length <= 105
  • -109 <= nums[i] <= 109

Solutions

Solution 1

All Problems

All Solutions