[알고리즘] 신고 결과 받기

강인호·2022년 10월 14일
0

알고리즘 문제풀이

목록 보기
32/36

이 문제는 여러모로 풀면서 의미가 깊었던 문제였다.

레벨 1의 문제긴 하지만 프로그래머스 레벨 1 문제중 정답률이 가장 낮기도 하고 한창 개발 공부를 시작할 때 유일하게

레벨 1 문제중 풀다가 포기했었던 문제였다. (나중에 강해져서 돌아오려고)

갑자기 이 문제를 안풀었던게 생각나서 오랜만에 들어와봤는데 그때는 감조차도 잡히지 않았던 문제였는데 내가 그 사이 늘긴한건지 아니면 그때 내가 허우적댔던건지는 모르겠지만 정말 짧은 시간에 해결이 되었다.

일단 문제로 넘어가보자면 동일한 사람이 반복해서 신고를 하면 무효처리가 되므로 중복이 되는 값들을 제거해주었다.

(Set과 스프레드 연산자를 이용)

그 다음 두개의 빈 배열을 만들고 id의 개수만큼 0을 집어넣었다.

하나는 신고 횟수 배열 하나는 받을 문자의 배열.

그 다음 map을 돌면서 공백을 기준으로 쪼갠 것 중 1번째 (신고당한애) 의 해당하는 인덱스의 위치를 찾아서

1씩 더해주었다.

그러면 id_list와 같은 순서의 count에 신고 결과가 쌓인다.

그 후에 다시 신고당한애를 id_list를 통해 count 배열에서 신고 회수를 조회해서 k이상일때

이번에는 공백을 기준으로 쪼갠 것 중 0번째 (신고를 한 애)의 해당하는 인덱스의 값에 1씩 더해주어서 해결했다.

뭔가 예전에 못풀었던 문제를 너무 수월하게 풀어서 기분이 좋았다.

0개의 댓글