Возвращает версию данного массива, в которой каждое нулевое значение в массиве заменяется наибольшим нечетным значением справа от нуля в массиве. Если справа от нуля нет нечетного значения, оставьте ноль как ноль.
public int[] zeroMax(int[] nums) {
int max = 0;
int temp = 0;
for(int i = 0; i < nums.length-1; i++){
if(nums[i] == 0){
for(int j = i+1; j < nums.length; j++){
if(nums[j] % 2 != 0) max = Math.max(HERE, nums[j]);
}nums[i] = max;
max = 0;
}
}
return nums;
}
Это мой код проблемы, ЗДЕСЬ - это то, что я не совсем понимаю. Я должен поставить max там, но, на мой взгляд, у меня была бы возможность также просто поставить 0 там. Потому что l oop сбрасывает макс в 0 в любом случае, верно? Но когда я ставлю 0 там, код не работает для некоторых случаев. Чего мне не хватает?