유저 목록과 유저가 신고한 ID, 정치처리 기준횟수를 입력받아, 특정 횟수 이상 신고당한 사용자를 정지 처리하여 이를 신고한 유저별로 정지시킨 횟수를 반환하는 함수 작성
def solution(id_list, report, k):
ban_record = [0] * len(id_list)
reported_user = {user: 0 for user in id_list}
report = set(report)
for item in report:
reported_user[item.split()[1]] += 1
for item in report:
if reported_user[item.split()[1]] >= k:
ban_record[id_list.index(item.split()[0])] += 1
return ban_record
ban_record
변수에 id_list
의 길이만큼 초기값 0
을 저장dict
타입 객체를 생성하고, {사용자: 횟수}
형식으로 초기화 및 선언set
타입으로 변환dict
타입 객체 reported_user
에서 피신고자를 키값으로 찾아 횟수에 1
을 더함for
Loop으로 피신고자별 신고 횟수(reported_user
)가 k
번 이상일 경우 정지 처리 결과(ban_record
)에 1
을 더함. 이 때 입력받은 id_list
와 동일한 인덱스에 값이 저장되어야 하므로 ban_record
인덱스 값에 정지처리 된 유저의 id를 id_list
에서 찾아 부여함.