프로그래머스 Lv.1 [2022 KAKAO TECH INTERNSHIP] - 성격 유형 검사하기 (정답률 하위 TOP 6)

세나정·2023년 5월 5일
0

문제

https://school.programmers.co.kr/learn/courses/30/lessons/118666

내 풀이

문제가 오죽 길고 이해하는데 시간이 조금 걸릴 뿐 문제나 로직 자체는 어려운 게 아닌 것 같다. 하지만 문제에서 요구한 건 해시테이블 사용인 것 같지만 내 풀이는 해시테이블을 사용하되 나머지 로직이 조금 구린(?) 것 같지만 에러없이 한 번에 통과.

function solution(survey, choices) {
    let table = { R:0 , T:0, C:0, F:0, J:0, M:0, A:0, N :0 } 
    
    let ans = ""
    
    for (i=0; i<survey.length; i++) {
        
        if (choices[i] < 4) {
            table[survey[i][0]] += Math.abs(choices[i]-4)
        } else if (choices[i] > 4){
            table[survey[i][1]] += Math.abs(choices[i]-4)
        } 
    }
    
    if ( table['R'] >= table['T']) {
        ans += 'R'
    } else {
        ans += 'T'
    }
    
    if (table['C'] >= table['F']) {
        ans += 'C'
    } else {
        ans += 'F'
    }
    
    if ( table['J'] >= table['M']) {
        ans += 'J'
    } else {
        ans += 'M'
    }
    
    if ( table['A'] >= table['N']) {
        ans += 'A'
    } else {
        ans += 'N'
    }
    
    return ans
}
profile
기록, 꺼내 쓸 수 있는 즐거움

0개의 댓글