[프로그래머스] 신고 결과 받기 Lv.1 - [파이썬/python]
https://school.programmers.co.kr/learn/courses/30/lessons/92334
정답 주의!!!
def solution(id_list, reports, k):
user_list = {id:{"reported_me":set(),"mail":0} for id in id_list}
#user_list = {
# "아이디": {
# "나에게 신고한 유저": set(), #중복제거를 위해 set()사용
# "신고 성공(mail을 받을 횟수)": 0,
# }
#}
for report in reports:
report = report.split(" ")
#report[0] 신고한 유저
#report[1] 신고당한 유저
user_list[report[1]]["reported_me"].add(report[0])
#날 신고한 유저 추가하기
for key in user_list:
#날 신고한 유저의 수가 K값 이상이면 날 신고한 유저들의 mail값 1씩 추가하기
if (len(user_list[key]["reported_me"]) >= k):
for user in user_list[key]["reported_me"]:
user_list[user]["mail"] += 1
mail_values = [value["mail"] for value in user_list.values()]
#user_list에서 "mail"값만 추출
return mail_values
728x90
'코딩테스트' 카테고리의 다른 글
[프로그래머스] 문자열 다루기 기본 - Lv.1 (37) | 2023.08.10 |
---|---|
[프로그래머스] 수박수박수박수박수박수? - Lv.1 (27) | 2023.08.10 |
[프로그래머스] 바탕화면 정리 - Lv.1 (43) | 2023.08.07 |
[프로그래머스] 공원 산책 - Lv.1 (15) | 2023.08.07 |
[프로그래머스] 달리기 경주 - Lv.1 (0) | 2023.08.06 |