๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ’€์ด/-

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์˜คํ”ˆ์ฑ„ํŒ…๋ฐฉ

by syLim___ 2023. 6. 10.
728x90

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

 

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

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

programmers.co.kr


์ฒ˜์Œ ์ œ์ถœํ•œ ์ฝ”๋“œ - 31๊ฐœ ํ…Œ์ผ€์—์„œ ๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ

def solution(record):
    answer = []
    user = dict()
    msg = []
    for rec in record:
        temp = rec.split()
        if temp[0] == "Leave":
            msg.append(temp[1]+"๋‹˜์ด ๋‚˜๊ฐ”์Šต๋‹ˆ๋‹ค.")
            continue
        elif temp[0] == "Enter":
            msg.append(temp[1]+"๋‹˜์ด ๋“ค์–ด์™”์Šต๋‹ˆ๋‹ค.")
        user[temp[1]] = temp[2]
        
    for m in msg:
        uid = m[:7]
        answer.append(m.replace(uid,user[uid]))
    return answer

๋ฌธ์ œ ์กฐ๊ฑด์„ ๋‹ค์‹œ ์ฝ์–ด๋ณด๋‹ˆ user id ๊ธธ์ด๊ฐ€ uidxxxx ์ด 7๊ธ€์ž๋กœ ๊ณ ์ •๋œ ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, 1 ์ด์ƒ 10 ์ดํ•˜์˜ ๋ฌธ์ž์—ด์ด๋ผ๊ณ  ํ–ˆ๋‹ค.

์ฆ‰ ๋ฐ‘์—์„œ ์„ธ๋ฒˆ์งธ line์—์„œ uid๋ฅผ ๊ธ์–ด์˜ค๋Š” ๋ถ€๋ถ„์ด ํ‹€๋ ธ๋‹ค.

 

์ˆ˜์ •ํ•œ ์ฝ”๋“œ (์ •๋‹ต)

def solution(record):
    answer = []
    user = dict()
    msg = []
    for rec in record:
        temp = rec.split()
        if temp[0] == "Leave":
            msg.append(temp[1]+"๋‹˜์ด ๋‚˜๊ฐ”์Šต๋‹ˆ๋‹ค.")
            continue
        elif temp[0] == "Enter":
            msg.append(temp[1]+"๋‹˜์ด ๋“ค์–ด์™”์Šต๋‹ˆ๋‹ค.")
        user[temp[1]] = temp[2]
        
    for m in msg:
        uid = m.split()[0][:-2]
        answer.append(m.replace(uid,user[uid]))
    return answer
728x90