import java.io.IOException;
import java.util.*;
/*
Cамая длинная последовательность
*/
public class Solution {
public static void main(String[] args) throws IOException {
//напишите тут ваш код
Scanner scanner = new Scanner(System.in);
List<Integer> arrayList = new ArrayList<>();
for (int i = 0; i <10 ; i++) {
arrayList.add(scanner.nextInt());
}
int count = 0;
int temp = 0;
for (int i = 1; i < arrayList.size(); i++) {
if (arrayList.get(i-1).equals(arrayList.get(i))){
temp++;
}else{
if (temp>=count){
count=temp;
temp=0;
}
}
}
if (temp>count){
count=temp;
System.out.println(count+1);
}
else System.out.println(count+1);
}
}
Vlad Shehzade
23 уровень
Проверял множество условий и все работает в точности, но задача не проходит
Решен
Комментарии (6)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Павел Дудров
28 мая 2020, 11:39
-1 лишний
0
Vlad Shehzade
28 мая 2020, 11:58
Все же не проходит, быть может логика выстроена не совсем корректно?
0
Павел Дудров
28 мая 2020, 14:08
когда у вас последовательность нарушается вы обнуляете счетчик только при выполнении условия, а надо всегда
0
Vlad Shehzade
2 июня 2020, 19:58
Я вас не совсем понял, я обнуляю счетчик лишь только по той причине, что последовательность тех или иных чисел оборвалась и считать нужно сначала т.к. последовательность будет считаться для следующих чисел. В случае если я буду обнулять каждый раз когда он пройдет цикл, смысла счетчика пропадает. В конце стоит проверка в случае если последняя последовательность чисел(которые идут в конце) больше чем последовательность чисел в начале и я не понимаю где мне нужно обнулять счетчик.
0
Павел Дудров
3 июня 2020, 07:07решение
представим такую последовательность 1112113333
первая итерация сравниваем 1 и 1 равны temp=1
вторая итерация сравниваем 1 и 1 равны temp=2
третья итерация сравниваем 1 и 2 - не равны temp>count count=2 temp=0
четвертая итерация сравниваем 2 и 1 - не равны temp<count ничего не делаем
пятая итерация сравниваем 1 и 1 равны temp=1
шестая итерация сравниваем 1 и 3 не равны temp<count ничего не делаем а должны обнулить count
дальше 3=3 и temp по идее должен быть 1 но он будет уже 2
....
когда числа не равны, temp надо всегда обнулять, а присвоение count=temp делать по условию
+2
Vlad Shehzade
3 июня 2020, 19:35
Спасибо огромное за доступное и понятное объяснение ситуации.
0