๐Ÿ—๏ธ Algorithm/โฌ› ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

โฌ› [Programmers] [2019 KAKAO BLIND RECRUITMENT] [Python] Level2_์˜คํ”ˆ์ฑ„ํŒ…๋ฐฉ

Dbswnstjd 2022. 12. 16. 04:25

๋ฌธ์ œ

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

 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr

ํ’€์ด

# ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค 2๋‹จ๊ณ„ - ์˜คํ”ˆ์ฑ„ํŒ…๋ฐฉ
from collections import defaultdict
def solution(record):
    answer = []
    result = []
    user_id = defaultdict(str)
    for s in record:
        cmd = s.split()
        command = cmd[0]
        id = cmd[1]
        if command == 'Enter':
            user_id[id] = cmd[2]
            result.append([id, '๋‹˜์ด ๋“ค์–ด์™”์Šต๋‹ˆ๋‹ค.'])
        elif command == 'Leave':
            result.append([id, '๋‹˜์ด ๋‚˜๊ฐ”์Šต๋‹ˆ๋‹ค.'])
        elif command == 'Change':
            user_id[id] = cmd[2]
    for id, mention in result:
        if mention == '๋‹˜์ด ๋“ค์–ด์™”์Šต๋‹ˆ๋‹ค.':
            answer.append(user_id[id] + '๋‹˜์ด ๋“ค์–ด์™”์Šต๋‹ˆ๋‹ค.')
        else:
            answer.append(user_id[id] + '๋‹˜์ด ๋‚˜๊ฐ”์Šต๋‹ˆ๋‹ค.')
    return answer

print(solution(["Enter uid1234 Muzi", "Enter uid4567 Prodo","Leave uid1234","Enter uid1234 Prodo","Change uid4567 Ryan"]))