๐ท๐ผ๋ชจ์ฌ๋ด์ ๊ฐ๋ฐ์์ฒ๐ท๐ผ
[JAVA/์ฝ๋ฉํ ์คํธ] ํํ ๋ณธ๋ฌธ
๋ฐ์ํ
๋ฌธ์
https://school.programmers.co.kr/learn/courses/30/lessons/64065
public int[] solution(String s) {
ArrayList<Integer> list = new ArrayList<>();
HashMap<Integer, Integer> map = new HashMap<>();
String[] str = s.split("}");
for(int i=0; i<str.length; i++){
map.put(i, str[i].length());
}
List<Integer> keySet = new ArrayList<>();
keySet.addAll(map.keySet());
// Value ๊ฐ์ผ๋ก ์ค๋ฆ์ฐจ์ ์ ๋ ฌ
keySet.sort(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return map.get(o1).compareTo(map.get(o2));
}
});
for(int i=0; i<keySet.size(); i++){
str[keySet.get(i)] = str[keySet.get(i)].replace("{", "");
String dd = "";
for(int j=0; j<str[keySet.get(i)].length(); j++){
if(Character.isDigit(str[keySet.get(i)].charAt(j))){
dd += str[keySet.get(i)].charAt(j);
}else{
if(dd.length() > 0 && (!list.contains(Integer.parseInt(dd)))){
list.add(Integer.parseInt(dd));
}
dd = "";
}
}
if(dd.length() > 0 && (!list.contains(Integer.parseInt(dd)))){
list.add(Integer.parseInt(dd));
}
}
int[] answer = new int[list.size()];
for(int i=0; i<list.size(); i++){
answer[i] = list.get(i);
}
return answer;
}
'๊ฐ๋ฐ > ์๊ณ ๋ฆฌ์ฆ ๋ฌธ์ ํ์ด JAVA' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JAVA/์ฝ๋ฉํ ์คํธ] ๋ฉ๋ฆฌ ๋ฐ๊ธฐ (0) | 2023.03.02 |
---|---|
[JAVA/์ฝ๋ฉํ ์คํธ] ์ฐ์ ๋ถ๋ถ ์์ด ํฉ์ ๊ฐ์ (0) | 2023.03.02 |
[JAVA/์ฝ๋ฉํ ์คํธ] ๊ทค ๊ณ ๋ฅด๊ธฐ (0) | 2023.02.28 |
[ํ๋ก๊ทธ๋๋จธ์ค/JAVA] ์ ํ์ ์๊ฐ ์ด๋ (0) | 2023.02.24 |
[JAVA/์ฝ๋ฉํ ์คํธ] ์นดํซ (0) | 2023.02.09 |
Comments