Нужна помощь в реализации счётчика чисел, которые идут последовательно. Прошу прощение за "тяжёлое" изложение своих мыслей. Понимаю, что сейчас реализовано неправильно, логика должна быть следующей:
- при n-ном количестве последовательных одинаковых чисел, счётчик увеличивается за каждую цифру на единицу. Как только следующий элемент не равен предыдущему, счётчик должен запоминать количество одинаковых чисел, идущих подряд;
- при каждой следующей последовательности одинаковый чисел должен создаваться счётчик, который считает количество чисел идущих подряд;
- в итоге, если у нас было, например, три последовательности, то у нас должно быть три цифры, каждая из которых значит длину последовательности. Мы сравниваем эти цифры по величине и получаем ответ на задачу
Как реализовать второй пункт? Как при каждой новой последовательности цифр создавать новый счётчик? Если есть решение более краткое и лаконичное, то буду рад узнать его
package com.javarush.task.task08.task0812;
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 {
List <Integer> MGS = new ArrayList <Integer>();
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
for (int i = 0; i < 10; i++) {
int a = Integer.parseInt(reader.readLine());
MGS.add(a);
}
int a = 0;
int k = 0;
while (true) {
if (MGS.get(k+1).equals(MGS.get(k))) {
a++;
}
k++;
if (k == 9) {
break;
}
}
System.out.println(a);
}
}