import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
/*
Cамая длинная последовательность
*/
public class Solution {
public static void main(String[] args) throws IOException {
// объявляем метод ввода и список
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
List<Integer> list = new ArrayList();
// заполняем список 10 числами вводом с клавиатуры
for (int i = 0; i < 10; i++) {
list.add(Integer.parseInt(reader.readLine()));
}
// инициализируем счётчик последовательности одинаковых чисел
int count = 1;
int save = 1;
// реализуем метод нахождения максимально длинной последовательности одинаковых чисел
for (int i = 0; i < 9; i++) {
if (list.get(i).equals(list.get(i + 1))) {
count++;
} else {
if (save <= count) {
save = count;
count = 1;
}
}
}
//последняя проверка на случай, когда цепочка чисел закончилась на максимальной последовательности, но в цикл else мы уже не попадаем
if (save < count) save = count;
// вывод на экран результата
System.out.println(save);
}
}
Коновалов Андрей Викторович
6 уровень
Не понимаю, почему валидатор не принимает решение, хотя на различных последовательностях оно отрабатывает верно.
Решен
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Игорь Сторожук
11 января 2020, 11:43решение
У тебя count сбрасывается в единицу только если текущая последовательность получилась больше. см пример от @IceBerg
+2
Коновалов Андрей Викторович
11 января 2020, 12:27
Понял. Блок
if (save <= count) {
save = count;
нужно выносить из else в if.
Спасибо.
0
IceBergMaster
11 января 2020, 10:52
А на такой?
+1