Я пытаюсь выполнить этот вызов , и я не совсем понимаю,
Решение объяснено, комментарий
1) если M
Таким образом, при заполнении массива 10 на 10 50 целыми числами 9 генерируется случайная строка и столбец, а если массив [строка] [столбец] уже имеет 9, мы генерируем новую строку и столбец и повторяем попытку.
Будет ли это технически длиться вечно или, по крайней мере, более чем в 2 * 50 раз, так как мы можем стать действительно неудачниками в отличие от того, что говорит решение?
Код выглядит примерно так:
int[][] array = new int[10][10];
int placed = 0;
int num_to_place = 50;
while (placed < num_to_place) {
int row = random.nextInt(10);
int col = random.nextInt(10);
if (array[row][col] == 9) {
continue;
}
array[row][col] = 9;
++placed;
}
Также см. Официальные строки кода решения 37-55:
от https://gist.github.com/dgossow/d28083522608771e1c65f49822820ba9