반응형

문제풀이

1. 각 id가 신고한 id를 저장한다.

  a[id] = [신고한 id, ...]

2. 각 id가 신고당한 횟수를 저장한다.

  c[id]=id가 신고당한 횟수

3. 각 id가 신고한 id a[id] 의 요소들 x 중 신고당한 횟수 c[x] 가 기준값 k를 넘는 요소 x의 수를 반환한다.

 

Python Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#https://programmers.co.kr/learn/courses/30/lessons/92334?language=python3
def solution(id_list, report, k):
    # 신고 당한 횟수
    c = {}
    # 신고한 id
    a = {}
    
    for i in id_list:
        c[i] = 0
        a[i] = []
    
    for r in set(report):
        #x가 y를 신고
        x, y = r.split()
        c[y] += 1
        a[x].append(y)
        
    return [sum(1 if c[t] >= k else 0 for t in a[i]) for i in id_list]
cs

 

문제링크

 

코딩테스트 연습 - 신고 결과 받기

문제 설명 신입사원 무지는 게시판 불량 이용자를 신고하고 처리 결과를 메일로 발송하는 시스템을 개발하려 합니다. 무지가 개발하려는 시스템은 다음과 같습니다. 각 유저는 한 번에 한 명의

programmers.co.kr

 

반응형

+ Recent posts