해당 내용은 프로그래머스 코딩테스트 광탈 방지 A to Z : JavaScript 강의를 공부하며 정리한 내용입니다.
=> 같은 input이 들어온다면 해시 함수는 같은 값을 내보냄.
=> 다른 input이 들어왔지만 같은 값이 나오는 경우가 존재.
=> 이런 경우를 해시 함수라고 함
대표 문제 : 위장(프로그래머스 고득점 kit lv 2)
function solution(clothes) {
var answer = 1;
let closet = {};
for (let c of clothes) {
// console.log(c)
// closet[c[1]] =
if (closet[c[1]]) {
closet[c[1]].push(c[0]);
} else {
closet[c[1]] = [c[0]];
}
}
// console.log(Object.keys(closet))
for (let k of Object.keys(closet)) {
console.log(k)
console.log(closet[k].length);
answer *= (closet[k].length+1);
}
return answer-1;
}
심화 문제 : 베스트앨범(프로그래머스 고득점 kit lv 3)