З огляду на ціле число n ≥ 1, виведіть 2D-представлення † знаку відсотка ширини n . Конструкція йде наступним чином:
- Створіть матрицю n за n (або список списків), заповнену нулями.
- Вставте їх у верхній лівий і нижній правий кути.
- Розмістіть їх по діагоналі знизу вліво вгорі праворуч.
Для введення n = 4 ця конструкція виглядатиме так:
1. 4x4 matrix of 0s
0 0 0 0
0 0 0 0
0 0 0 0
0 0 0 0
2. 1s in TL and BR corners
1 0 0 0
0 0 0 0
0 0 0 0
0 0 0 1
3. 1s across BL-TR diagonal
1 0 0 1
0 0 1 0
0 1 0 0
1 0 0 1
Це кодовий гольф , тому виграє найкоротша програма в байтах.
† Я використовую матрицю 1s і 0s, але також прийнятно використовувати рядок будь-яких символів і пробілів, які не є пробілами. Отже, приклад вище може виглядати так:
# #
#
#
# #
або
# #
#
#
# #
Тестові справи
n
output
1
1
2
1 1
1 1
3
1 0 1
0 1 0
1 0 1
4
1 0 0 1
0 0 1 0
0 1 0 0
1 0 0 1
10
1 0 0 0 0 0 0 0 0 1
0 0 0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 1 0 0
0 0 0 0 0 0 1 0 0 0
0 0 0 0 0 1 0 0 0 0
0 0 0 0 1 0 0 0 0 0
0 0 0 1 0 0 0 0 0 0
0 0 1 0 0 0 0 0 0 0
0 1 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 1
Заключна примітка
Додавання пояснення буде дуже вдячним.
'1'+'0'*(n-2)
вставлено пробіли