21.04.17 19:26 작성
·
151
0
왜죠?
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
String input = in.next();
System.out.println(new Main().solution(input));
}
private String solution(String input) {
Map<Character, Integer> map = new HashMap<>();
Set<Character> keySet = new LinkedHashSet<>();
for (int i = 0; i < input.length(); i++) {
keySet.add(input.charAt(i));
map.put(input.charAt(i), map.getOrDefault(input.charAt(i), 0) + 1);
}
StringBuilder sb = new StringBuilder();
keySet.forEach(character -> {
if (map.get(character) > 1) {
sb.append(character).append(map.get(character));
} else {
sb.append(character);
}
});
return String.valueOf(sb);
}
}
답변 1
1
2021. 04. 18. 16:03
안녕하세요^^
문제에 "문자가 연속으로 반복되는 경우"를 압축한다고 했습니다.
문제가 잘 이해가 안될 것 같아 채점사이트 문제에 입력예시2 를 만들어 넣었습니다.