์์ฃผํ์ง ๋ชปํ ์ ์
๐ก๋ฌธ์ ์ค๋ช
์๋ง์ ๋ง๋ผํค ์ ์๋ค์ด ๋ง๋ผํค์ ์ฐธ์ฌํ์์ต๋๋ค.
๋จ ํ ๋ช ์ ์ ์๋ฅผ ์ ์ธํ๊ณ ๋ ๋ชจ๋ ์ ์๊ฐ ๋ง๋ผํค์ ์์ฃผํ์์ต๋๋ค.
๋ง๋ผํค์ ์ฐธ์ฌํ ์ ์๋ค์ ์ด๋ฆ์ด ๋ด๊ธด ๋ฐฐ์ด participant์ ์์ฃผํ ์ ์๋ค์ ์ด๋ฆ์ด ๋ด๊ธด ๋ฐฐ์ด completion์ด ์ฃผ์ด์ง ๋,
์์ฃผํ์ง ๋ชปํ ์ ์์ ์ด๋ฆ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์.
์ ํ์ฌํญ
- ๋ง๋ผํค ๊ฒฝ๊ธฐ์ ์ฐธ์ฌํ ์ ์์ ์๋ 1๋ช ์ด์ 100,000๋ช ์ดํ์ ๋๋ค.
- completion์ ๊ธธ์ด๋ participant์ ๊ธธ์ด๋ณด๋ค 1 ์์ต๋๋ค.
- ์ฐธ๊ฐ์์ ์ด๋ฆ์ 1๊ฐ ์ด์ 20๊ฐ ์ดํ์ ์ํ๋ฒณ ์๋ฌธ์๋ก ์ด๋ฃจ์ด์ ธ ์์ต๋๋ค.
- ์ฐธ๊ฐ์ ์ค์๋ ๋๋ช ์ด์ธ์ด ์์ ์ ์์ต๋๋ค.
์ ์ถ๋ ฅ ์
participant | completion | return |
---|---|---|
["leo", "kiki", "eden"] | ["eden", "kiki"] | "leo" |
["marina", "josipa", "nikola", "vinko", "filipa"] | ["josipa", "filipa", "marina", "nikola"] | "vinko" |
["mislav", "stanko", "mislav", "ana"] | ["stanko", "ana", "mislav"] | "mislav" |
์ ์ถ๋ ฅ ์ ์ค๋ช
์์ #1
"leo"๋ ์ฐธ์ฌ์ ๋ช
๋จ์๋ ์์ง๋ง, ์์ฃผ์ ๋ช
๋จ์๋ ์๊ธฐ ๋๋ฌธ์ ์์ฃผํ์ง ๋ชปํ์ต๋๋ค.
์์ #2
"vinko"๋ ์ฐธ์ฌ์ ๋ช
๋จ์๋ ์์ง๋ง, ์์ฃผ์ ๋ช
๋จ์๋ ์๊ธฐ ๋๋ฌธ์ ์์ฃผํ์ง ๋ชปํ์ต๋๋ค.
์์ #3
"mislav"๋ ์ฐธ์ฌ์ ๋ช
๋จ์๋ ๋ ๋ช
์ด ์์ง๋ง, ์์ฃผ์ ๋ช
๋จ์๋ ํ ๋ช
๋ฐ์ ์๊ธฐ ๋๋ฌธ์ ํ๋ช
์ ์์ฃผํ์ง ๋ชปํ์ต๋๋ค.
ํ์ด
import java.util.*;
class Solution {
public String solution(String[] participant, String[] completion) {
Arrays.sort(participant);
Arrays.sort(completion);
for(int i=0; i<completion.length; i++){
if(!participant[i].equals(completion[i])){
return participant[i];
}
}
return participant[participant.length-1];
}
}
public class Algorithm {
public static void main(String[] args) {
/* ํ
์คํธ ์ฝ๋ ์
๋๋ค. */
String participant[] = {"mislav", "stanko", "mislav", "ana"};
String completion[] = {"stanko", "ana", "mislav"};
Solution test = new Solution();
System.out.println(test.solution(participant, completion));
}
}
๐ ํด์๋งต - getOrDefault ๋ฅผ ํ์ฉํ ๊ณ ์๋์ ํ์ด
package ์์ฃผํ์ง๋ชปํ์ ์;
import java.util.HashMap;
class Solution {
public String solution(String[] participant, String[] completion) {
String answer ="";
HashMap<String, Integer> hash = new HashMap<>();
for(String player : participant) hash.put(player, hash.getOrDefault(player, 0) + 1);
for(String player : completion) hash.put(player, hash.get(player) -1);
for(String key : hash.keySet()) {
if(hash.get(key) != 0) {
answer = key; break;
}
}
return answer;
}
}
public class Algorithm {
public static void main(String[] args) {
/* ํ
์คํธ ์ฝ๋ ์
๋๋ค. */
String participant[] = {"mislav", "stanko", "mislav", "ana"};
String completion[] = {"stanko", "ana", "mislav"};
Solution test = new Solution();
System.out.println(test.solution(participant, completion));
}
}
'Algorithm > ํ๋ก๊ทธ๋๋จธ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
2021 KAKAO ๋ธ๋ผ์ธ๋ ์ฝ๋ฉํ ์คํธ - ์ ๊ท ์์ด๋ ์ถ์ฒ (0) | 2022.04.13 |
---|---|
[JAVA] ํ๋ก๊ทธ๋๋จธ์ค - ํธ๋ํฐ๋ฒํธ๊ฐ๋ฆฌ๊ธฐ (0) | 2022.04.06 |
2022 KAKAO ๋ธ๋ผ์ธ๋ ์ฝ๋ฉํ ์คํธ - ์ ๊ณ ๊ฒฐ๊ณผ ๋ฐ๊ธฐ (0) | 2022.04.01 |
[Java] ํ๋ก๊ทธ๋๋จธ์ค - x๋งํผ ๊ฐ๊ฒฉ์ด ์๋ n๊ฐ์ ์ซ์ (0) | 2022.03.20 |
[Java] ํ๋ก๊ทธ๋๋จธ์ค - ์ฝ์์ ๊ฐ์์ ๋ง์ (0) | 2022.03.18 |