Vous connaissez ces étagères empilables qui sont essentiellement des boîtes en bois qui peuvent être empilées ensemble? Nous allons simuler la construction de certaines étagères à partir de celles avec de l'art ASCII.
Nos livres sont tous de taille pratique et uniforme et ressemblent tous à ce qui suit:
|X|
|X|
|X|
Les étagères sont des boîtes individuelles, toujours trois caractères de haut à l'intérieur (assez pour tenir un livre debout), composées de |
caractères à gauche et à droite, des -
caractères pour le haut et le bas, et assez larges pour contenir des X
livres (où X
est une entrée entier). Par exemple, voici une étagère de taille 3
:
|---------|
| |
| |
| |
|---------|
parce que vous pouvez y insérer des 3
livres comme ça
|---------|
||X||X||X||
||X||X||X||
||X||X||X||
|---------|
L'entrée va être deux entiers strictement positifs X
et Y
, où X
est la largeur des étagères que nous avons (mesurée en livres), et Y
combien de livres nous devons empiler. Si nous avons plus de livres qu'il n'y en a sur une seule étagère, nous devons ajouter plus d'étagères en haut. Par exemple, voici une entrée 4 wide / 6 books
:
|------------|
||X||X| |
||X||X| |
||X||X| |
|------------|
|------------|
||X||X||X||X||
||X||X||X||X||
||X||X||X||X||
|------------|
Si Y % X > 0
, ce qui signifie que le nombre de livres n'est pas un multiple entier de la taille de l'étagère, les livres restants doivent se placer en haut à gauche (comme dans le cas 4 6
ci-dessus) et la partie restante de cette étagère remplie de les espaces.
Contribution
- Deux entiers strictement positifs dans n'importe quel format pratique , chacun
>0
. - Vous pouvez prendre l'entrée dans l'un ou l'autre ordre (par exemple, la taille des étagères en premier, puis le nombre de livres, ou vice versa). Veuillez indiquer dans votre soumission l'ordre de saisie.
- Vous pouvez sans risque supposer qu'aucune entrée ne sera plus grande que la
[int]
taille par défaut de votre langue (ou l'équivalent).
Sortie
La représentation artistique ASCII résultante des livres et des étagères.
Règles
- Les sauts de ligne ou les espaces de début ou de fin sont tous facultatifs, tant que les caractères eux-mêmes s'alignent correctement.
- Un programme complet ou une fonction sont acceptables. S'il s'agit d'une fonction, vous pouvez renvoyer la sortie plutôt que de l'imprimer.
- Si possible, veuillez inclure un lien vers un environnement de test en ligne afin que d'autres personnes puissent essayer votre code!
- Les failles standard sont interdites.
- Il s'agit de code-golf, donc toutes les règles de golf habituelles s'appliquent et le code le plus court (en octets) l'emporte.
D'autres exemples
6 wide / 2 books
|------------------|
||X||X| |
||X||X| |
||X||X| |
|------------------|
2 wide / 6 books
|------|
||X||X||
||X||X||
||X||X||
|------|
|------|
||X||X||
||X||X||
||X||X||
|------|
|------|
||X||X||
||X||X||
||X||X||
|------|
4 wide / 9 books
|------------|
||X| |
||X| |
||X| |
|------------|
|------------|
||X||X||X||X||
||X||X||X||X||
||X||X||X||X||
|------------|
|------------|
||X||X||X||X||
||X||X||X||X||
||X||X||X||X||
|------------|