Dans un monde multidimensionnel steam-punk, notre patron souhaite apposer des étiquettes d'index imprimées sur chaque tiroir du classeur multidimensionnel de notre conglomérat.
Le patron veut composer la totalité de la feuille d'étiquettes sous une forme unique, en utilisant une police achetée uniquement à cette fin, nous devons donc commander les tris (pièces de symboles métalliques). Étant donné que les tris sont très chers, notre commande doit être pour le nombre exact de chaque chiffre-symbole.
Pour un ensemble donné (par tous les moyens) de longueurs de dimensions ≥ 0, renvoyez (par tous les moyens) notre commande, qui est le tableau de fréquence des chiffres requis pour composer toutes les coordonnées cartésiennes. Il doit être organisé par ordre d'apparition du clavier (c.-à-d. 0 après 9) et peut ne pas inclure d'ordres de 0 sortes, donc si aucune sorte ne doit être ordonnée du tout (car une dimension a une longueur de 0); n'imprime rien.
- Bonus de -3 tri si votre code peut gérer (c'est-à-dire ne rien imprimer) 0 dimensions aussi.
- Les caractères finaux de nouvelle ligne sont acceptables.
- L'interdiction des échappatoires standard s'applique.
- Comme mentionné, les sortes sont chères, c'est donc du codecolf .
Une bonne âme peut modifier ce défi pour inclure une notation automatisée, alors incluez un en-tête comme:# LanguageName, 123 sorts
Cas de test
Étant donné 11
, imprimez:
1 4
2 1
3 1
4 1
5 1
6 1
7 1
8 1
9 1
0 1
parce que les étiquettes sont nécessaires 1
, 2
, 3
, 4
, 5
, 6
, 7
, 8
, 9
, 10
et 11
.
Étant donné 2 3
, imprimez:
1 5
2 5
3 2
parce que les étiquettes sont nécessaires 1 1
, 1 2
, 1 3
, 2 1
, 2 2
et 2 3
.
Étant donné 2 0
, imprimez une ligne vide:
ou rien.
Étant donné 1 2 3
, imprimez:
1 11
2 5
3 2
parce que les étiquettes sont nécessaires 1 1 1
, 1 1 2
, 1 1 3
, 1 2 1
, 1 2 2
et1 2 3
Étant donné 5 5 5 5
, imprimez:
1 500
2 500
3 500
4 500
5 500
Et non, je ne vais pas lister les 625 étiquettes.