introduction
De Wikipédia :
Une tessellation d'une surface plane est le carrelage d'un plan en utilisant une ou plusieurs formes géométriques, appelées tuiles, sans chevauchements ni espaces.
Un pavage assez bien connu est illustré ci-dessous:
Les losanges sont carrelés d'une manière qui n'entraîne aucun chevauchement ni espace et simule des colonnes de cubes interchangeables.
Tâche
Votre tâche consiste à écrire un programme qui mosaïque les losanges de la même manière que l'image ci-dessus. L'entrée pour le programme sera les dimensions de la tessellation:, height x width
où la largeur est la quantité de colonnes et la hauteur est la quantité de lignes.
Un seul cube qui est 1 x 1
(3 tuiles de losanges) est représenté exactement comme suit:
_____
/\ \
/ \ \
/ \ _____\
\ / /
\ / /
\/_____ /
Donc, si les entrées / dimensions sont 3 x 2
, cela devrait être la sortie:
_____
/\ \
/ \ \
/ \ _____\ _____
\ / /\ \
\ / / \ \
\/_____ / \ _____\
/\ \ / /
/ \ \ / /
/ \ _____\/_____ /
\ / /\ \
\ / / \ \
\/_____ / \ _____\
/\ \ / /
/ \ \ / /
/ \ _____\/_____ /
\ / /\ \
\ / / \ \
\/_____ / \ _____\
\ / /
\ / /
\/_____ /
Comme vous pouvez le voir, il y a 3 lignes (hauteur) et 2 colonnes (largeur). Les colonnes changent de haut en bas. Votre programme devrait le faire aussi et commencer plus haut. Par exemple, 3 x 3
serait:
_____ _____
/\ \ /\ \
/ \ \ / \ \
/ \ _____\ _____ / \ _____\
\ / /\ \ / /
\ / / \ \ / /
\/_____ / \ _____\/_____ /
/\ \ / /\ \
/ \ \ / / \ \
/ \ _____\/_____ / \ _____\
\ / /\ \ / /
\ / / \ \ / /
\/_____ / \ _____\/_____ /
/\ \ / /\ \
/ \ \ / / \ \
/ \ _____\/_____ / \ _____\
\ / /\ \ / /
\ / / \ \ / /
\/_____ / \ _____\/_____ /
\ / /
\ / /
\/_____ /
Règles
- Le résultat doit être sorti, la saisie peut être prise comme vous le souhaitez mais doit correspondre à la hauteur et à la largeur
- Les retours à la ligne sont autorisés
- Les colonnes de pavage commencent toujours par le haut puis alternent de haut en bas
- Les côtés des pavages doivent être partagés et les pavages doivent être correctement placés entre les autres colonnes sans espaces
- Votre soumission peut être une fonction ou un programme complet
- Votre programme doit imprimer exactement la sortie ci-dessus étant donné la même entrée; en d'autres termes, la sortie doit suivre le même format pour les cubes / pavages
Hypothèses
- Vous pouvez supposer que l'entrée sera toujours supérieure à
1 x 1
, vous n'avez donc pas besoin de cas où un zéro est entré
Notation
Il s'agit de code-golf , donc le code le plus court en octets l'emporte. Les failles standard sont également interdites.