🔅코딩테스트 공부🔅/❗프로그래머스(Lv.1)
[프로그래머스] Level1 성격 유형 검사하기(python)
윤무무
2023. 2. 11. 15:55
https://school.programmers.co.kr/learn/courses/30/lessons/118666
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
1. 내가 작성한 코드
def solution(survey, c):
result = ''
kakao = {"R" : 0, "T" : 0, "C" : 0, "F" : 0, "J" : 0, "M" : 0, "A" : 0, "N" : 0}
score = {1 : 3, 2 : 2, 3 : 1, 4 : 0, 5 : 1, 6 : 2, 7 : 3}
for i in range(len(c)):
j = list(survey[i])
if c[i] < 4:
kakao[j[0]] += score[c[i]]
else:
kakao[j[1]] += score[c[i]]
if kakao["R"] >= kakao["T"]:
result += "R"
else:
result += "T"
if kakao["C"] >= kakao["F"]:
result += "C"
else:
result += "F"
if kakao["J"] >= kakao["M"]:
result += "J"
else:
result += "M"
if kakao["A"] >= kakao["N"]:
result += "A"
else:
result += "N"
return result
그동안 카카오 문제들은 시도하기 무서워서 Level1도 건들지 못했었는데
처음으로 카카오 문제를 해결했다.
그래봤자 효율적이지 않은 코드이긴 하지만, 풀어냈다는 것에 의의를😮
참고로 score라는 딕셔너리 없이
choice 값이 4보다 크면 choice - 4
choice 값이 4보다 작으면 4 - choice 해줘도 된다.
2. 메모
- kakao[j[0]] += score[c[i]] 와 같이, 딕셔너리의 value를 바로 갱신해 줄 수 있음
- dic[KEY] = Value 접근