Яндекс.Контест - Wrong-Answer на третьем тесте
Решаю задачу по алгоритмам на Яндекс.Контесте.
Условие задачи
Красотой строки назовем максимальное число идущих подряд одинаковых букв. (красота строки abcaabdddettq равна 3)
Сделайте данную вам строку как можно более красивой, если вы можете сделать не более k операций замены символа.
Формат ввода. Первая строка положительный int k. Вторая строка String непустая строка.
Формат вывода Выведите одно число — максимально возможную красоту строчки, которую можно получить.
Примеры:
Ввод
2
abcaz
Вывод
4
Ввод
2
helto
Вывод
3
В IDEA получаю ожидаемый результат, но на сайте не проходит последний тест. В чем причина того, что последний тест не проходит?
Код решения на Java:
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.Comparator;
import java.util.List;
import java.util.Map;
import java.util.TreeMap;
public class Main {
public static void main(String[] args) throws IOException {
List<String> list = Files.readAllLines(Path.of("input.txt"));
int count = Integer.parseInt(list.get(0));
String word = list.get(1);
Map<Character, Integer> map = new TreeMap<>();
for (char ch : word.toCharArray()) {
if (!map.containsKey(ch)) {
map.put(ch, 0);
}
map.put(ch, map.get(ch) + 1);
}
int maxCharCount = map.entrySet()
.stream()
.max(Map.Entry.comparingByValue))
.get().getValue();
int result = maxCharCount + count;
if (result >= word.length()) {
result = word.length();
}
System.out.println(result);
}
}