Étant donné un entier n ≥ 1, produire une représentation 2D † d'un signe de pourcentage de largeur n . La construction se déroule comme suit:
- Créez une matrice n par n (ou une liste de listes) remplie de zéros.
- Insérez-les dans les coins supérieur gauche et inférieur droit.
- Placez-les sur la diagonale du coin inférieur gauche au coin supérieur droit.
Pour l'entrée n = 4, cette construction ressemblerait à:
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
Il s'agit d'un code-golf , donc le programme le plus court en octets l'emporte.
† J'utilise une matrice de 1 et de 0, mais il est également acceptable d'utiliser une chaîne de caractères et d'espaces non blancs. Ainsi, l'exemple ci-dessus pourrait ressembler à:
# #
#
#
# #
ou
# #
#
#
# #
Cas de test
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
Note finale
L'ajout d'une explication serait grandement apprécié.
'1'+'0'*(n-2)
avec un espace inséré