[프로그래머스] 2022 KAKAO TECH INTERNSHIP/성격 유형 검사하기/파이썬/python
Algorithm/카카오 기출

[프로그래머스] 2022 KAKAO TECH INTERNSHIP/성격 유형 검사하기/파이썬/python

728x90
반응형

 

💡 solution  

💬 질문에 따른 선택을 기준으로, 딕셔너리 자료 구조 활용하여 각 성격 유형별 점수를 먼저 구한다.

💬 4가지 각 지표별로 두 가지 성격 유형의 점수를 비교하여 최종적으로 성격 유형을 결정한다.

 

👨‍💻 code  

def solution(survey, choices):
    charactors_dict = {
        'R': 0,
        'T': 0,
        'C': 0,
        'F': 0,
        'J': 0,
        'M': 0,
        'A': 0,
        'N': 0,
    }
    # 모든 질문의 성격 유형 점수 계산
    for i in range(len(survey)):
        current_question = survey[i]
        current_answer = choices[i]
        default_score = 4
        if current_answer < default_score:
            charactors_dict[current_question[0]] += (default_score - current_answer)
        elif default_score < current_answer <= 7:
            charactors_dict[current_question[1]] += (current_answer - default_score)

    # 점수 비교로 성격 유형 최종 결정하기
    before_charactor = ''
    before_charactor_score = 0
    cnt = 0
    result = ''
    for key, val in charactors_dict.items():
        cnt += 1
        if cnt != 2:
            before_charactor = key
            before_charactor_score = val
            continue
        
        if before_charactor_score > val:
            result += before_charactor
        elif before_charactor_score < val:
            result += key
        elif before_charactor_score == val:
            result += sorted([key, before_charactor])[0]
        cnt = 0

    return result

 

📌 problem  

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

반응형