코딩테스트/프로그래머스

Python 프로그래머스) 성격 유형 검사하기

jinsang-2 2024. 5. 14. 10:22
성격 유형 검사하기

2022 KAKAO TECH INTERNSHIP

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

 

프로그래머스

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

programmers.co.kr

MBTI 검사하듯이 질문에 대한 답변에 점수를 매겨서 성격 유형 검사하는 문제이다. 

 

  • 점수별로 성격 유형이 결정되고 점수가 같으면 사전 순으로 성격 유형을 뽑으면 된다.
  • 그래서 그냥 딕셔너리 만들 때 사전 순으로 정의
  • 점수 측정 후 예를 들어 "RT" 면 양수나 0이면 "R" 음수가 나오면 "T"
def solution(survey, choices):
    result = ''
    score_li_f=[3,2,1,0,-1,-2,-3]
    score_li_r=[-3,-2,-1,0,1,2,3]
    dic={"RT":0,"CF":0,"JM":0,"AN":0}

    for i,s in enumerate(survey):
        if s in dic:
            dic[s]+=score_li_f[choices[i]-1]
        else:
            dic[s[::-1]]+=score_li_r[choices[i]-1]

    for k,v in dic.items():

        if v < 0 :
            result+=k[1]
        else:
            result+=k[0]
    return result

 

문제만 잘 읽으면 쉬운 문제이다.