Вы не обойдете проверку заемщиков. Вы учитываете то, что он говорит вам, и пересматриваете свою программу, чтобы соответствовать.
Здесь говорится, что вы не можете изменить то, что вы в настоящее время повторяете (принцип r ^ w), поэтому не делайте этого. Если вы хотите добавить столько нулей, сколько нечетных чисел в каждой строке, сделайте это: подсчитайте количество шансов в строке, а затем добавьте это количество нулей:
use std::iter::repeat;
fn main() {
let mut lines = [
vec![1, 2, 3],
vec![4, 5, 6],
vec![7, 8, 9],
];
for line in lines.iter_mut() {
let odds = line.iter().filter(|it| *it % 2 == 0).count();
line.extend(repeat(0).take(odds));
}
dbg!(lines);
}