Contexte
Manufactoria a été commercialisé comme un jeu, mais nous, les golfeurs de code, pouvons le voir pour ce qu'il est vraiment: un langage de programmation à deux dimensions. Le langage de programmation Manufactoria est basé sur une seule file d'attente , qui contient une série de marqueurs colorés. Le pointeur d'instructions se déplace sur le plateau de jeu à l'aide de bandes transporteuses et rencontre une série d'écrivains et de branches qui lisent et écrivent dans la file d'attente.
La langue est très facile à comprendre, donc la façon la plus rapide de l'apprendre est de jouer aux premiers niveaux du jeu (liés ci-dessus).
Défi
Votre défi est de créer un programme qui peut diviser un nombre par un autre en un minimum de temps.
L'entrée du programme sera une chaîne de X marqueurs bleus suivie de Y marqueurs rouges. La sortie requise sera une chaîne de marqueurs rouges d'une longueur de X / Y.
Le plateau de jeu à utiliser se trouve dans ce niveau de concours officiel:
Il mesure 13x13 (la taille maximale) et il est pré-équipé des tests corrects (voir la section de notation).
Notation
Le score de votre programme est le temps total nécessaire pour que le programme réussisse tous les tests du niveau officiel du concours. Le temps total est indiqué sur l'écran de niveau terminé.
Lors de l'exécution des tests, vous devrez probablement utiliser le curseur d'accélération 50x en bas à gauche afin de recevoir les résultats rapidement (l'accélération temporelle n'affecte pas le score).
Voici une liste des problèmes de division impliqués dans les tests:
6/2 = 3
3/3 = 1
4/1 = 4
0/1 = 0
12/4 = 3
12/3 = 4
9/3 = 3
10/2 = 5
Exemple d'E / S
12/3=4
in: BBBBBBBBBBBBRRR
out: RRRR
10/2=5
in: BBBBBBBBBBRR
out: RRRRR
9/3=3
in: BBBBBBBBBRRR
out: RRR
0/1=0
in: R
out: