Table of contents
problem link
https://leetcode.com/problems/find-lucky-integer-in-an-array/description/
my solution
모든 숫자를 순회해서 각 숫자의 frequency count를 객체에 저장한다.
객체의 키와 값이 동일한 경우에만
luckyNum
값을 업데이트한다.
/**
* @param {number[]} arr
* @return {number}
*/
var findLucky = function (arr) {
let luckyNum = -1;
let frequencyObj = {};
for (let i = 0; i < arr.length; i++) {
frequencyObj[arr[i]] = frequencyObj[arr[i]] ? frequencyObj[arr[i]] + 1 : 1
}
for (const [key, value] of Object.entries(frequencyObj)) {
if (Number(key) === value) luckyNum = value;
}
return luckyNum;
};