https://school.programmers.co.kr/learn/courses/30/lessons/92334
ํ๋ก๊ทธ๋๋จธ์ค
์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์.
programmers.co.kr
์ค๋ณต ์ ๊ฑฐ๋ฅผ ์ํด report๋ฅผ set์ผ๋ก ๋ง๋ค์ด์ฃผ๊ณ
๋์ ๋๋ฆฌ๋ฅผ ํ๋ ๋ง๋ค์ด์ key(์ ๊ณ ํid):value(์ด์ฉ์id - list ํํ)๋ก ์ ์ฅํด์คฌ๋ค.
๊ทธ ํ ๋์ ๋๋ฆฌ๋ฅผ ๋๋ฉด์ value๊ฐ์ด k๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์ ๋ key๊ฐ์ answer๊ฐ์ ํ๋์ฉ ์ฆ๊ฐ์์ผฐ๋ค.
# ํ๋ก๊ทธ๋๋จธ์ค 92334: ์ ๊ณ ๊ฒฐ๊ณผ ๋ฐ๊ธฐ (2022 KAKAO BLIND RECRUITMENT)
def solution(id_list, report, k):
answer = [0 for i in range(len(id_list))]
report = set(report) # ์ค๋ณต ์ ๊ฑฐ
dic = {} # ๋์
๋๋ฆฌ
for i in range(len(id_list)):
dic[id_list[i]] = []
for i in report:
dic[i.split()[1]].append(i.split()[0])
for i in id_list:
if len(dic[i]) >= k:
for j in dic[i]:
answer[id_list.index(j)] += 1
return answer