FrontEnd/프로그래머스
[JS] 롤케이크 자르기
정_민_규
2023. 6. 5. 13:05
728x90
Map자료형을 활용해서 왼쪽과 오른쪽의 케이크 상태를 저장하고 , size들을 비교해서 같은 경우의 개수를 세 주는 방식으로 문제를 해결하였다.
function solution(topping) {
const right = new Map()
const left = new Map()
for (const t of topping) {
if (right.get(t)) right.set(t , right.get(t)+1)
else right.set(t,1)
}
let ret = 0
for (const t of topping) {
if (right.get(t)>1) right.set(t, right.get(t)-1)
else right.delete(t)
if (left.get(t)) left.set(t , left.get(t)+1)
else left.set(t,1)
if (left.size === right.size) ret++
}
return ret
}
728x90