본문 바로가기

HashSet3

전화번호 목록(Lv.2) 문제 설명 입출력 예시 요약 전화번호목록에서 특정 전화번호로 시작하는 전화번호가 있는지 찾기 풀이 접근 방식 1. 반복문을 통해 목록에 접두어 존재 여부 확인 → i번째 전화번호의 length - 1 번째 까지 += 해가면서 목록에서 조회 코드리뷰 import java.util.*; class Solution { public boolean solution(String[] phone_book) { boolean answer = true; HashSet set = new HashSet(); for(String str : phone_book) { set.add(str); } for(int i = 0; i < phone_book.length; i++) { for(int j = 0; j < phone_book[i.. 2024. 3. 22.
체육복(Lv.1) 문제 설명 입출력 예시 요약 잃어버린 사람의 앞 뒤 번호를 여분이 있는 사람 목록에서 찾기 풀이 접근 방식 1. lost 배열과 reserve 배열 기반으로 set 만들기 → reserve에 있는 번호가 lost에도 있으면 해당 번호는 삭제(여분을 잃어버렸기 때문에 +-0) 2. iterator 반복자를 통해 lost set의 앞 뒤 번호 확인 → 만약 있다면 lost 배열에서 제거 코드리뷰 import java.util.*; class Solution { public int solution(int n, int[] lost, int[] reserve) { HashSet lostSet = new HashSet(); HashSet reserveSet = new HashSet(); for(int i : los.. 2024. 3. 21.
신고 결과 받기(Lv.1) 문제 설명 입출력 예시 요약 k번 이상 신고당한 유저는 이용이 정지되고, 해당 유저를 신고한 유저에게 신고 메일이 발송된다. id_list 순서대로 신고 메일을 받은 횟수를 return 풀이 문제 해석 중복된 신고는 제외하고 신고 받은 횟수로 이용정지 유저를 구하고 해당 유저를 신고한 유저의 value += 1 접근 방식 1) report 중복 제거 → set으로 담아서 중복 제거 2) 이용 정지 유저 구하기 → 신고 받은 유저 map 생성 후 k와 비교해서 set에 저장 3) 이용 정지 유저를 신고한 유저의 value += 1 → report의 요소를 split 해서 [1]번째 index에 해당하는 유저가 신고당한 유저라면, [0]번째 index에 해당하는 유저의 value += 1 코드 리뷰 impo.. 2024. 3. 19.