프로그래머스 - KAKAO 성격 유형 검사하기 [파이썬]
Algorithm

프로그래머스 - KAKAO 성격 유형 검사하기 [파이썬]

728x90
반응형

https://programmers.co.kr/

2022 KAKAO 테크 인턴십 코딩테스트 문제 - 성격 유형 검사하기  /  파이썬 

문제 링크 : https://school.programmers.co.kr/learn/courses/30/lessons/118666

 

프로그래머스

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

programmers.co.kr

 

일반적인 구현 문제.

하지만 레벨 1 치고는 읽어야하는 문제의 길이가 길다. 

최근 MBTI 검사를 겨냥한(?) 문제로 최신 트렌드를 잘 반영해주는 것 같았다. 

 

 

정답 코드 : 

from collections import defaultdict


def change(problem, score): # 지표, 점수 기준  동일화 시키기  
    transform_dict = {"TR": "RT", "FC": "CF", "MJ": "JM", "NA": "AN"}
    if problem in transform_dict.keys():
        return transform_dict[problem], 4 - score
    else:
        return problem, score - 4


def solution(survey, choices):
    answer = ''
    pro = ["RT", "CF", "JM", "AN"]
    di = defaultdict(int) 

    for p in pro: # dict 초기화 
        di[p] 

    for idx, problem in enumerate(survey):
        p, s = change(problem, choices[idx])
        di[p] += s

    for i in range(4):
        if di[pro[i]] > 0:
            answer = answer + pro[i][1]
        else:
            answer = answer + pro[i][0]
            
    return answer

 

사실 코드라인 수를 더욱 줄일 수 있었으나, 귀찮음으로 인해...

이상 카카오 2022 테크 인턴십 코딩테스트에 대한 파이썬 문제 풀이였다. 

728x90
반응형