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
Archives
Today
Total
๊ด€๋ฆฌ ๋ฉ”๋‰ด

midnightly

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜ (JAVA) ๋ณธ๋ฌธ

Algorithm/programmers

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜ (JAVA)

๋น„๋ฒ„๋ฒ„๋น„ 2022. 2. 4. 10:49

๐Ÿ“ƒ ๋ฌธ์ œ

์ˆ˜๋งŽ์€ ๋งˆ๋ผํ†ค ์„ ์ˆ˜๋“ค์ด ๋งˆ๋ผํ†ค์— ์ฐธ์—ฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋‹จ ํ•œ ๋ช…์˜ ์„ ์ˆ˜๋ฅผ ์ œ์™ธํ•˜๊ณ ๋Š” ๋ชจ๋“  ์„ ์ˆ˜๊ฐ€ ๋งˆ๋ผํ†ค์„ ์™„์ฃผํ•˜์˜€์Šต๋‹ˆ๋‹ค.

๋งˆ๋ผํ†ค์— ์ฐธ์—ฌํ•œ ์„ ์ˆ˜๋“ค์˜ ์ด๋ฆ„์ด ๋‹ด๊ธด ๋ฐฐ์—ด participant์™€ ์™„์ฃผํ•œ ์„ ์ˆ˜๋“ค์˜ ์ด๋ฆ„์ด ๋‹ด๊ธด ๋ฐฐ์—ด completion์ด ์ฃผ์–ด์งˆ ๋•Œ, ์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜์˜ ์ด๋ฆ„์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•ด์ฃผ์„ธ์š”.

 

๐Ÿ“ ํ’€์ด

import java.util.*;
class Solution {
    public String solution(String[] participant, String[] completion) {
        HashMap<String, Integer> hm = new HashMap<>();
        for (int i = 0; i < participant.length; i++){
            String name = participant[i];
            
            if (hm.containsKey(name)) { // ์ฐธ๊ฐ€์ž ์ค‘ ์ด๋ฏธ ๋“ฑ๋ก๋œ ์‚ฌ๋žŒ์ด ์กด์žฌํ•˜๋ฉด value ์นด์šดํŠธ +1
                hm.put(name, hm.get(name)+1);
            } else { // ๋“ฑ๋ก๋œ ์ฐธ๊ฐ€์ž๊ฐ€ ์—†๋‹ค๋ฉด value ๊ธฐ๋ณธ ๊ฐ’ 1
                hm.put(name, 1);
            }
        }
        
        for (int i = 0; i < completion.length; i++) {
            if (hm.get(completion[i]) == 1){ // ์™„์ฃผ์ž์˜ value๊ฐ€ 1์ด๋ผ๋ฉด ์ฐธ๊ฐ€์ž map์—์„œ ์‚ญ์ œ
                hm.remove(completion[i]);
            } else { // value๊ฐ€ 1์ด ์•„๋‹ˆ๋ผ๋ฉด (=๋™๋ช… ์กด์žฌ) value ์นด์šดํŠธ -1
                hm.put(completion[i], hm.get(completion[i])-1);
            }
        }
        
        String tmp = hm.keySet().toString();
        String answer = tmp.substring(1, tmp.length()-1); // ์•ž๋’ค ๊ด„ํ˜ธ ์ œ๊ฑฐ
        return answer;
    }
}

 

https://programmers.co.kr/learn/courses/30/lessons/42576

 

์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ์™„์ฃผํ•˜์ง€ ๋ชปํ•œ ์„ ์ˆ˜

์ˆ˜๋งŽ์€ ๋งˆ๋ผํ†ค ์„ ์ˆ˜๋“ค์ด ๋งˆ๋ผํ†ค์— ์ฐธ์—ฌํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋‹จ ํ•œ ๋ช…์˜ ์„ ์ˆ˜๋ฅผ ์ œ์™ธํ•˜๊ณ ๋Š” ๋ชจ๋“  ์„ ์ˆ˜๊ฐ€ ๋งˆ๋ผํ†ค์„ ์™„์ฃผํ•˜์˜€์Šต๋‹ˆ๋‹ค. ๋งˆ๋ผํ†ค์— ์ฐธ์—ฌํ•œ ์„ ์ˆ˜๋“ค์˜ ์ด๋ฆ„์ด ๋‹ด๊ธด ๋ฐฐ์—ด participant์™€ ์™„์ฃผํ•œ ์„ ์ˆ˜

programmers.co.kr

 

Comments