https://programmers.co.kr/learn/courses/30/lessons/92334?language=python3
2022 KAKAO BLIND RECRUMENT 기출
def solution(id_list, report, k):
answer = []
# id_list : 사용자 이름
# report : 신고자 신고당한사람
result=dict()
id_order=dict()
for i, id in enumerate(id_list): #initialization
result[id] = dict()
result[id]['num']=0
result[id]['reporter']=[]
id_order[id]=i
answer.append(0)
for line in report: #data-ordering
keys = list(result.keys())
s, t = line.split(" ")
exist_reporters = list(result[t]['reporter'])
if s not in exist_reporters:
result[t]['reporter'].append(s)
result[t]['num'] +=1
for i,id in enumerate(id_list):
if result[id]['num']>=k:
for reporter in result[id]['reporter']:
answer[id_order[reporter]]+=1
return answer
딕셔너리를 쓰면 간단히 해결되는 문제이다.
근데 다른사람 문제 푼걸 보면 현타온다..
나는 중복 지울때 다 검사했지만, set 매서드를 쓰면 그냥 해결된다라는것을 생각 못했다!!
set메서드도 활용할 수 있도록 해야한다.
최대한, 파이썬3의 내장 함수를 활용할 수 있도록 해야한다.
외부 라이브러리를 사용하지 못하기 때문이다.
앞으로 코테풀면서 자주 나오는 활용 법들을 정리할 예정이다.