문제링크
https://school.programmers.co.kr/learn/courses/30/lessons/118666
문제링크
function solution(survey, choices) {
var answer = '';
const map = {}
const types = ['RT','CF','JM','AN']
types.forEach((type)=>{
type.split("").forEach((v)=>{
map[v]=0
})
})
survey.forEach((v,i)=>{
const [disagree, agree] = v.split('')
map[choices[i]>4?agree:disagree] += Math.abs(choices[i]-4)
})
types.forEach((type)=>{
const [type1,type2] = type.split("").sort()
if(map[type1]>=map[type2]){
answer+=type1
}else{
answer+=type2
}
})
return answer;
}
후기
사실 위 코드는 내가 처음 제출한 코드를 조금 더 세련되게 수정한 코드이다.
해당 문제를 풀고 다른 사람들의 코드를 보니 수정하여 작성하고자 하는 욕구가 생겼다.
수정하다 보니 map [ choice[i]>4? agree:disagree ] 와 같이 속성 값에 연산을 넣는 방법을 사용해보게 되었다.
'Javascript' 카테고리의 다른 글
프로그래머스 (JS) > 가장 큰수 (0) | 2024.07.04 |
---|---|
프로그래머스[JS] > 택배상자 (0) | 2024.06.29 |
[JS] base64 img data를 img File 형태로 변경하기 (0) | 2024.05.18 |
[JS] 미리보기 이미지 구현하기 ( FileReader, FileReader.readAsDataURL() 이용 ) (0) | 2024.05.15 |
예외 처리 방법 ( throw, Error 이용 ) (0) | 2023.11.30 |