public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
List<Integer> list = new ArrayList<Integer>(10);
List<Integer> listCount = new ArrayList<Integer>();
for (int i = 0; i < 10; i++) {
list.add(Integer.parseInt(reader.readLine()));
}
for (int z = 0; z < list.size() - 1; z++) {
int count = 0;
while (list.get(z).equals(list.get(z + 1))) { // как я понял тут сравнивает первый элемент со вторым.
count++ // увеличиваем счетчик
if (z < list.size() - 2) { // почему -2 ? завчем мы сравниваем первый элемент с седьмым элементом?
z++; // тут также почему увеличиваем первый элемент дважды(первый в цикле)
} else break;
}
if (count != 0) // в этом часть кода тоже не понял.
listCount.add(count);
}
if (listCount.size() > 1) {
int max = listCount.get(0);
for (int m = 1; m < listCount.size(); m++) {
if (max < listCount.get(m))
max = listCount.get(m);
}
System.out.println(max + 1);
}
if (listCount.size() == 1)
System.out.println(listCount.get(0) + 1); // почему добавляет в конце +1?
if (listCount.size() == 0) {
System.out.println("1");
}
}
Zhaxylyk
35 уровень
Обьясните кто-нибудь что выполлняет это вся часть кода где начинается цикл. 3 дня не могу понять как решаеться код. Спасибо огромное кто поможет понять.
Обсуждается
Комментарии (3)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
ГоффMaster
29 июня 2020, 07:20
прости за радикальность - просто выкинь этот код)
0
Zhaxylyk
29 июня 2020, 08:02
Почему? Есть другой понятный способ решения?
0
ГоффMaster
29 июня 2020, 17:13
Однозначно есть - ведь если у тебя возникают вопросы, значит этот код не совсем логичен.
0