참치코더의 꿈 메모장

알고리즘 94일차 - 프로그래머스 기출 문제(JAVA) / 신고 결과 받기 본문

카테고리 없음

알고리즘 94일차 - 프로그래머스 기출 문제(JAVA) / 신고 결과 받기

참치깡 2025. 8. 19. 16:23
728x90

코드 전체 부분

 

- 밴 유저를 신고처리하고 한꺼번에 게시판 이용정지를 시키면서 정지 메일을 발송하는 프로그램을 만드는 문제이다.

 

- 1. 첫번째로 Set 컬렉션을 사용해 동일한 사용자가 똑같은 사용자에게 신고를 여러번 했을때 count는 1번만 계산하므로

      중복되는 값을 제거해주었다.

 

- 2. 그다음 Map 컬렉션을 이용해 중복을 제거한 Set에서 신고당한 사람의 횟수를 count 해주었다.

      (reportCount.getOrDefault(reported, 0) + 1)을 한다면 해당 키가 map에 존재한다면 해당 값 반환 아니면 0반환 + 1)

 

- 3.  그리고 k값 이상 횟수만큼 신고를 받으면 해당 아이디는 정지되므로 해당 정지되는 유저를 banned Set에 저장에 주었다.

 

- 4. 그럼 최종 벤된 계정이 추려지고, 중복제거한 신고받은 메일에서 banned에 포함된 계정이 있어서 정지가 됫다면,

      해당 유저를 신고한 유저의 count를 1 증가시킨다. 최종적으로 어떤 사람이 신고를 해서 실제로 신고 횟수가 

      k 번 이상 초과되어 벤이 되었을때 해당 계정을 신고한 사람의 count는 1씩 증가하게 되고, 신고되서 벤된 사람의 수만큼

      각각 배열의 특정 값이 count 되어 정답이 나오게 된다. ^^

      

https://school.programmers.co.kr/questions/90080

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

728x90
Comments