Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

ol-rlo-zl

[프로그래머스 lv1] 신고 결과 받기 - 파이썬(Python) 본문

Programmers(Python)

[프로그래머스 lv1] 신고 결과 받기 - 파이썬(Python)

ol-rlo-zl 2023. 4. 11. 18:54

문제

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

풀이

def solution(id_list, report, k):
    
    reports = {i : 0 for i in id_list} # 유저별 신고 받은 횟수
    res = {i : 0 for i in id_list} # 유저별 받을 메일 수
    
    # 유효한 신고들에 대하여, 유저별로, 신고받은 횟수 구하기 (즉, reports 구하기)
    for r in set(report):
        user, bad = r.split()
        reports[bad] += 1
        
    # 유효한 신고들에 대하여, 유저별로, 정지당한 유저를 신고한 횟수 구하기 (즉, res 구하기)
    for r in set(report):
        user, bad = r.split()
        if reports[bad] >= k:
            res[user] += 1
            
    return list(res.values())

결과