인프런 커뮤니티 질문&답변

Charlie Chaplin님의 프로필 이미지

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

11. 문자열 압축

입력 출력 예제는 맞는데, 자꾸 오답이레요.

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 를 만들어 넣었습니다.