def solution(records):
answer = []
uid_name={}
for record in records:
line = record.split()
if len(line)==3:
uid_name[line[1]]=line[2]
for record in records:
line = record.split()
if line[0]=="Enter":
answer.append(uid_name[line[1]]+"님이 들어왔습니다.")
elif line[0]=="Leave":
answer.append(uid_name[line[1]]+"님이 나갔습니다.")
return answer
주어진 조건 그대로 구현을 하면 되는 문제였다.
여기서 주의해야 할 점은
"닉네임을 변경할 때는 기존에 채팅방에 출력되어 있던 메시지의 닉네임도 전부 변경된다." 는 조건이었다.
uid와 name쌍으로 저장하기 위해서 딕셔너리를 사용했고, 탐색을 2번해서 모든 메시지에 적용이 되도록 했다.
def solution(numbers):
answer = 45-sum(numbers)
return answer
def solution(absolutes, signs):
answer=0
for i in range(len(signs)):
if signs[i] is True:
answer+=absolutes[i]
else:
answer-=absolutes[i]
return answer
나는 단순 인덱스로 풀었지만, 다른 풀이를 보니 zip함수를 사용한 코드가 있었다.
zip함수 사용법
https://www.daleseo.com/python-zip/