JSFiddle - React, Tailwind, and code Playground
by Slico
JavaScript
function sockMerchant(n, ar) {
// check for each element in the array if there are pairs
// if there are pairs, increment found pairs number
let checkedNumber = 0;
let results = {}
for (var i = 0; i < ar.length; i++) {
var currentNumber = ar[i]
for (var j = 0; j < ar.length; j++) {
if (currentNumber === ar[j]) {
checkedNumber += 1
}
}
results[ar[i]] = checkedNumber
checkedNumber = 0
}
var totalPairs = 0
for (var result in results) {
if (results[result] > 1) {
if (results[result] % 2 === 0) {
totalPairs += (results[result] / 2)
} else {
totalPairs += ((results[result] - 1) / 2)
}
}
}
return totalPairs
}
sockMerchant(9, [10, 20, 20, 10, 10, 30, 50, 10, 20])