문제가 너무 길기 때문에, 자세한 내용은 생략한다
문제가 길지만, 읽어보니 특별한 메소드가 필요하거나 하진 않을 것 같다.
우선, 점수를 카운트하기 위해 객체를 만들어 준다.
그 다음, 점수를 얻는 과정을 반복문으로 작성해보자.
수준이 좀 떨어져 보이지만, 일단 생각난 그대로 적어 보았다.
짜치긴 해도, 추가 설명이 필요 없을 정도로 직관적인 코드가 아닐까 !!
위 의 반복문을 통해서 점수를 기록했으니, 이제 결과를 만들어야한다.
짜잔!..........
function solution(survey, choices) {
var answer = '';
// 각 지표에 해당하는 성격 유형 점수표가 필요함
let score = { R: 0, T:0, C:0, F:0, J:0, M:0, A:0, N:0}
for(let i = 0; i < choices.length ; i++) {
const [left, right] = survey[i].split("");
if (choices[i] > 4) {
score[right] += choices[i]-4
} else if ( choices[i] === 1) {
score[left] += 3
} else if ( choices[i] === 2) {
score[left] += 2
} else if ( choices[i] === 3) {
score[left] += 1
}
}
if ( score.R >= score.T) {
answer += "R"
} else answer += "T"
if ( score.C >= score.F) {
answer += "C"
} else answer += "F"
if ( score.J >= score.M) {
answer += "J"
} else answer += "M"
if ( score.A >= score.N) {
answer += "A"
} else answer += "N"
return answer;
}
정말 짜친다는 말이 절로 나오는 코드이지만 , 큰 하자없이 잘 작동하는 상태이고,
여유가 될 때에 코드를 가다듬으러 다시 이 문제로 돌아와야겠다.
'알고리즘 풀이' 카테고리의 다른 글
Javascript - 개인정보 수집 유효기간 [Level: 1] (0) | 2024.09.26 |
---|---|
Javascript - 바탕화면 정리 [Level: 1] (0) | 2024.09.20 |
Javascript - 햄버거 만들기 [Level: 1] (1) | 2024.09.13 |
Javascript - 둘만의 암호 [Level: 1] (0) | 2024.09.12 |
Javascript - 대충만든 자판 [Level: 1] (0) | 2024.09.11 |