Leetcode problem 32 - Number of Good Pairs
Given an array of integers nums, return the number of good pairs.
A pair (i, j) is called good if nums[i] == nums[j] and i < j.
Example 1:
Input: nums = [1,2,3,1,1,3] Output: 4 Explanation: There are 4 good pairs (0,3), (0,4), (3,4), (2,5) 0-indexed. Example 2:
Input: nums = [1,1,1,1] Output: 6 Explanation: Each pair in the array are good. Example 3:
Input: nums = [1,2,3] Output: 0
/**
* @param {number[]} nums
* @return {number}
*/
var numIdenticalPairs = function (nums) {
let count = 0;
for (let i = 0; i < nums.length; i++) {
for (let j = i + 1; j < nums.length; j++) {
if (nums[i] === nums[j]) {
count++;
}
}
}
return count;
};
let count = 0;: Initialize a variable count to 0. This variable will store the number of identical pairs found in the array.
for (let i = 0; i < nums.length; i++) {: Start a loop that iterates over the array using index i.
for (let j = i + 1; j < nums.length; j++) {: Start an inner loop that iterates over the array using index j, where j starts from i + 1. This is done to avoid counting the same pair twice.
if (nums[i] === nums[j]) {: Check if the elements at indexes i and j are equal, i.e., they form an identical pair.
count++;: If the elements are equal, increment the count variable to count the identical pair.
return count;: Return the final count of identical pairs after the loops finish.
Leave a comment