• 분류 전체보기 (512)
    • 개발남노씨(Coding Test) (6)
    • 고농축 백엔드 (17)
    • 재귀함수 DFS 총정리 (1)
    • 프론트엔드 날개달기:Vuejs.React (1)
    • 훈훈한 javascript (5)
    • 렛츠기릿 자바스크립트 (18)
    • 나도코딩 (1)
      • 웹 스크래핑 (1)
    • 프로그래머스(자바스크립트) (41)
      • LV.0(자바스크립트) (41)
    • 프로그래머스(자바) (121)
      • LV.0(자바) (56)
      • LV.1(자바) (41)
      • LV.2(자바) (23)
    • 프로그래머스(파이썬) (127)
      • LV.0(파이썬) (46)
      • LV.1(파이썬) (51)
      • LV.2(파이썬) (30)
    • 임시저장소 (31)
    • 프로젝트 (0)
    • 자바 알고리즘 (13)
      • 알고리즘 직빵 자바 문법 (10)
      • String(문자열) (3)
    • 파이썬 알고리즘 (93)
      • 알고리즘 직빵 파이썬 문법 (20)
      • 알고리즘 백준 (2)
      • 파이썬 알고리즘(사고력기르기) (6)
      • 파이썬 탐색 & 시물레이션 (8)
      • 이분탐색 & 그리디 알고리즘 (10)
      • 스택, 큐, 해쉬, 힙 (10)
      • 완전탐색과 DFS기초 (12)
      • DFS, BFS 활용 (19)
      • 동적계획법 (6)
    • 자바 (27)
      • Java TPC(생각하고, 표현하고, 코딩하고) (17)
      • Java (중요하고, 이해 안 되고, 어려운) (10)
    • 스프링 (5)
      • 스프링 MVC 패턴 2편 (5)
hELLO · Designed By 정상우.
@@#@@

기록용 블로그

프로그래머스(자바)/LV.1(자바)

완주하지 못한 선수→ getOrDefault() 각 요소 갯수 세기★★

2022. 12. 19. 19:26
public class Solution {
    public String solution(String[] participant, String[] completion) {
        String answer = "";
        HashMap<String, Integer> hm = new HashMap<>();
        for (String player : participant)
            hm.put(player, hm.getOrDefault(player, 0) + 1);

//        for (Map.Entry<String, Integer> entrySet : hm.entrySet()) {
//            System.out.println(entrySet.getKey() + " : " + entrySet.getValue());
//        }
        for (String player : completion)
            hm.put(player, hm.get(player) - 1);

//        for (Map.Entry<String, Integer> entrySet : hm.entrySet()) {
//            System.out.println(entrySet.getKey() + " : " + entrySet.getValue());
//        }

        for (String key : hm.keySet()) {
            if (hm.get(key) != 0){
                answer = key;
            }
        }
        return answer;
    }
        public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        Solution s = new Solution();
        String[] paricipant = {"mislav", "stanko", "mislav", "ana"};
        String[] completion = {"stanko", "ana", "mislav"};
        System.out.println(s.solution(paricipant, completion));
    }
}

▶ participant 배열의 요소를 map에 put한 결과 

ana : 1
mislav : 2
stanko : 1

 

 

▶ completion 배열의 요소를 map에 put한 결과 

ana : 0
mislav : 1
stanko : 0

 

 

▶ key에 해당하는 value 값이 0이 아닌 'key'를 answer담아서 return 한다.

저작자표시 비영리 변경금지 (새창열림)

'프로그래머스(자바) > LV.1(자바)' 카테고리의 다른 글

숫자 짝궁→char타입 - int타입, 내림차순 정렬시 0이 맨 앞에 오는 경우→ 모든 요소를 '0'으로 되어 있다 .  (0) 2022.12.20
과일장수→ 내림차순 정렬★★ + 우측에서 좌측으로 접근★★  (0) 2022.12.20
다트 게임→ 마지막에서 값을 remove★ 하고 싶은 경우 + 마지막에서 두번 째에서 값을 remove★하고 싶은 경우+ map자료형  (0) 2022.12.19
체육복→ 차집합을 구현하는 방법★★  (0) 2022.12.19
푸드 파이트 대회→ 우측(뒤)에서 좌측(앞)으로 접근★★  (0) 2022.12.18
    '프로그래머스(자바)/LV.1(자바)' 카테고리의 다른 글
    • 숫자 짝궁→char타입 - int타입, 내림차순 정렬시 0이 맨 앞에 오는 경우→ 모든 요소를 '0'으로 되어 있다 .
    • 과일장수→ 내림차순 정렬★★ + 우측에서 좌측으로 접근★★
    • 다트 게임→ 마지막에서 값을 remove★ 하고 싶은 경우 + 마지막에서 두번 째에서 값을 remove★하고 싶은 경우+ map자료형
    • 체육복→ 차집합을 구현하는 방법★★
    @@#@@
    @@#@@
    자바, 스프링, 알고리즘, 깃허브, 파이썬

    티스토리툴바