public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
List<Integer> list = new LinkedList<>();
int counter = 0;
for (int i = 0; i < 10; i++) {
list.add(Integer.parseInt(reader.readLine()));
}
Iterator<Integer> iterator = list.iterator();
for (int i = 0; i < list.size(); i++) {
while (iterator.hasNext()) {
if (list.get(i).equals(iterator.next())) {
counter++;
} else {
i++;
}
}
}
System.out.println(counter);
}
Сергей Орловский
24 уровень
Как сделать, чтобы счетчик увеличивался только после сравнения текущего элемента со следующим, а не после сравнения каждого элемента из списка?
Обсуждается
Комментарии (1)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
BadgerExpert
4 апреля 2020, 15:15
Очень сильно перемудрили, много лишнего.
linkedlist дело хозяйское, но arraylist и даже обычный массив отлично справляется.
итератор тоже лишний.
лишний цикл. Для задачи нужен один цикл.
Т.к. нужно посчитать именно последовательность, а не количество, то вам нужно сравнить текущий элемент со следующим, при этом учесть длину списка, чтобы не выйти за границы и что делать со счетчиком, когда элементы не равны.
0