Давши додатне ціле число n < 10
, створіть двовимірну матрицю, де кожне місце заповнено його x
та y
індексом (починаючи з верхнього лівого краю).
Наприклад:
Вхід: 2
00 10
10 11
Вхід: 3
00 10 20
01 11 21
02 12 22
Після створення сітки випадковим чином заповніть кожен індекс. Це може бути за допомогою "х" або будь-яким іншим способом позначення місця.
Ви визначаєте, яке місце заповнити, випадково генеруючи індекси для заповнення матриці. Ви можете заповнити лише n ^ 2 рази, щоб ви не могли заповнити стільки разів, скільки хочете, доки матриця не буде заповнена повністю. Наприкінці матрицю потрібно заповнити, тому ви повинні виконати певну роботу, щоб переконатися, що ви перевіряєте випадкові числа, які ви використовуєте для заповнення, щоб переконатися, що пляма ще не заповнена.
Оновіть або надрукуйте після кожного заповнення, щоб показати прогресування ітерацій заповнення.
Приклад заповнення:
Вхід: 2
00 10
01 11
00
вибирається випадковим чином:
XX 10
01 11
01
вибирається випадковим чином:
XX 10
XX 11
00
вибрано випадковим чином, але оскільки його вже було обрано, повторний ролик вибирає 10
:
XX XX
XX 11
11
вибирається випадковим чином:
XX XX
XX XX
Не роздруковуйте випадкові числа, оскільки візуально я повинен мати можливість бачити, який індекс був обраний. Під цим я маю на увазі не друкувати " 11
вибрано випадковим чином:". Це тут для дослідницької справи.
Оскільки це код-гольф, виграє найкоротший код.
Весело та щасливо гольфу!
n>= 10
можливо? (Ви повинні почати знати про максимальну довжину, щоб правильно заповнити провідні 0). Заповнення для цього випадку - це один індекс за раз, а не 1 цифра за раз, правда?