Решил с 40го раза, пробовал самыми разными методами, находил максимальный, сортировал список из последовательностей, но до тех пор, пока я не добавил строчку maxCounts.add(count);(добавляющую в count вне цикла в список, у меня не проходило по последнему пункту.
С таким кодом тоже не проходило, почему мне нужно добавить в конце вне цикла этот count в список еще раз?
Были и такие варианты кода
int max= maxCounts.get(0);
for(int k = 0; k<maxCounts.size()-1;k++){
if(max <= maxCounts.get(k+1).hashCode()) {
max = maxCounts.get(k+1);
count = max;
}
}
public class Solution {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
List <Integer> list = new ArrayList<>();
for( int i=0; i<10; i++){
list.add(sc.nextInt());
}
List<Integer> maxCounts = new ArrayList<>();
int count = 1;
for(int j = 0; j<9;j++){
if(list.get(j).hashCode()==list.get(j+1).hashCode()){
count++;
}else{
maxCounts.add(count);
count = 1;
}
}
int max= maxCounts.get(0);
for(int k = 0; k<maxCounts.size()-1;k++){
if(max <= maxCounts.get(k+1).hashCode()) {
max = maxCounts.get(k+1);
count = max;
}
}
System.out.println(count);
}
}
public class Solution {
public static void main(String[] args) throws IOException {
Scanner sc = new Scanner(System.in);
List <Integer> list = new ArrayList<>();
for( int i=0; i<10; i++){
list.add(sc.nextInt());
}
List<Integer> maxCounts = new ArrayList<>();
int count = 1;
for(int j = 0; j<9;j++){
if(list.get(j).hashCode()==list.get(j+1).hashCode()){
count++;
}else{
maxCounts.add(count);
count = 1;
}
}
maxCounts.add(count); // без этой строки валидатор не пропускал по последнему пункту(Предлагал проверить на другой последовательности, и на ней это, видимо, не работало
Collections.sort(maxCounts);
System.out.println(maxCounts.get(maxCounts.size()-1));
}
}
Но они все так же не работали без этой строки maxCounts.add(count);
Объясните, пожалуйста