Sfida
Gli operai di solito lavorano molto duramente. Tuttavia, il loro lavoro viene ora comunemente sostituito con le macchine.
Devi scrivere un programma che accetta un numero come input. Stamperà una fabbrica di 10 lavoratori 10 volte. Ogni volta, ogni lavoratore ha la 1/input
possibilità di essere "licenziato" e sostituito da una macchina.
Ingresso
Un numero intero, proveniente da STDIN o una chiamata di funzione.
Produzione
10 casse della fabbrica, ognuna con di solito più lavoratori licenziati.
Formato di output: come stampare una fabbrica
Una fabbrica si presenta così:
|0000000000|
o |0000011001|
Un tubo rappresenta i muri, uno 0 rappresenta un lavoratore e un 1 rappresenta una macchina, quindi la prima stampa della fabbrica sarà sempre |0000000000|
.
Esempio
Ingresso: 10
Produzione:
|0000000000| //always start off with this
|0000000010| //a 1/10 chance means that this worker lost his job
|0000010010|
|0010010010|
|1010010010|
|1010110010|
|1010110011|
|1010111011|
|1010111111|
|1110111111|
Ingresso: 5
Produzione:
|0000000000| //always start here
|0000001001| //a 1/5 chance means that 2 workers got fired
|1000101001|
|1000101111|
|1101101111|
|1111111111| //after achieving all machinery, the machines continue to be printed
|1111111111|
|1111111111|
|1111111111|
|1111111111|
NOTA
Il numero di lavoratori licenziati è CASUALE - nei miei esempi 1/5 chance
ci sarebbero sempre 2 lavoratori licenziati, ma il tuo programma deve farlo in modo casuale - a volte 1 e a volte 3 - hanno solo 1/5 di probabilità di essere licenziati.