LIT_13 2022 KAKAO TECH INTERNSHIP

여재우·2023년 11월 15일
0

LIT

목록 보기
14/21

LIT(Learn I Today) 내가 오늘 배운 것들에 대한 정리


프로그래머스 기출문제에 있는 2022 KAKAO TECH INTERNSHIP 문제를 정리해 보고자 한다.


성격 유형 검사하기

레벨 : 1
프로그래머스-코딩테스트 연습

느낀점: 일단 처음봤을때 부터 엄청 어려워 보인건 아니었고 덕분에 카카오 코딩테스트라도 자신감을 가지고 문제를 풀어볼 수 있게 해준 문제였다.

나의 풀이

def solution(survey, choices):
    answer = ''
    # 각 성격 들의 점수를 담을 수 있는 딕셔너리
    personality = {'R': 0, 'T': 0, 'C': 0, 'F': 0, 'J': 0, 'M': 0, 'A': 0, 'N': 0}
    # 질문과 답볍의 수
    n = len(choices)
    # 질문 별로 점수를 책정하여 딕셔너리에 저장하기
    for i in range(n):
        if choices[i] <= 4:
            personality[survey[i][0]] += (4 - choices[i])
        else:
            personality[survey[i][1]] += (choices[i] - 4)
    # 키를 슬라이싱 하기 위해서 리스트로 변환
    person_key = list(personality.keys()) 
    # 리스트를 2씩 보면서 i 와 i+1 비교 후 큰쪽 Answer에 넣기
    for i in range(0, len(person_key),2):
        if personality[person_key[i]] >= personality[person_key[i+1]]:
            answer += person_key[i]
        else:
            answer += person_key[i+1]
    return answer

먼저 각자 짝이 지어지는 (R,T), (C,F), (J,M), (A,N) 이 네가지 철자중 점수가 높은걸 고르거나 같은 점수면 알파벳 순으로 빠른걸 고르는 문제 였어서 간단했다. 조금더 쉽고 간단 하게 할 수도 있었을거 같은데 다음에는 좀더 간단하게 풀 수 있게 고민해 봐야 겠다.

profile
꾸준히 학습하고 기록하기 위한 log

0개의 댓글