문제
https://programmers.co.kr/learn/courses/30/lessons/92334?language=python3
코딩테스트 연습 - 신고 결과 받기
문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의
programmers.co.kr
풀이
def solution(id_list, report, k):
report = set(report) # 신고 중복 제거
dic = {i:0 for i in id_list} # 신고당한 횟수
dic2 = {i:0 for i in id_list} # 신고 대상이 k회 이상 신고 된 횟수
# 신고 횟수 구하기
for r in report:
arr = r.split()
dic[arr[1]]+=1
# 신고 대상이 k회 이상 신고 된 횟수 구하기
for r in report:
arr = r.split()
if dic[arr[1]] >= k: # k회 이상이면
dic2[arr[0]] += 1 # +1
return list(dic2.values())
신고 당한 횟수를 유저별로 구해준 후, 신고 대상이 k회 이상 신고 된 횟수를 구해준다.
'코딩테스트 > Python' 카테고리의 다른 글
[Python] 프로그래머스 - 구명보트 (0) | 2022.03.21 |
---|---|
[Python] 프로그래머스 - 타겟 넘버 (0) | 2022.03.21 |
[Python] 백준 #5582 - 공통 부분 문자열 (0) | 2022.03.21 |
[Python] 백준 #17615 - 볼 모으기 (0) | 2022.03.21 |
[Python] 백준 #5397 - 키로거 (0) | 2022.03.20 |