JSFiddle - React, Tailwind, and code Playground

by Mariya_Korotkova

JavaScript

/* function countPairs(n, arr) {
  let pairs = 0;
  arr.forEach((item,i, array) => {
    let currentArr = arr.filter((color) => color === item);
    let newArr = arr.filter((color) => color !== item);
    
    console.log(Math.trunc(currentArr.length%2));
  });
  
}

countPairs(3, [1, 1, 1, 1, 2, 3, 4]); */

function countPairs(n, arr) {
  let pairs = 0;
  let sortedArr = arr.sort((a, b) => a - b);
  let currColor = sortedArr[0];
  let currPairs = 0;
  for (let i = 0; i < n; i++) {
    if (sortedArr[i] !== currColor) {
    	pairs += Math.floor(currPairs / 2);
      currPairs = 0;
      currColor = sortedArr[i];
    } else {
    	currPairs++;
    }
  }
  
  return pairs;
}

console.log(countPairs(9, [10, 20, 20, 10, 10, 30, 50, 10, 20]));