In questa variante del puzzle a quattro zampe dovresti usare fino a x
x's
(e nessun altro numero) e un set definito di operazioni per raggiungere ogni numero da 0 a 100. Se x = 4
poi puoi usarne fino a quattro 4s
e questa domanda diventa il classico quadruplo puzzle (tranne che puoi usare fino a quattro 4 invece di doverne usare esattamente quattro). Assumiamo1 < x <= 9
.
In questa versione sono consentiti solo i seguenti operatori:
- Addizione (
+
), Sottrazione (-
), Moltiplicazione (*
), Divisione (/
). Nota che questa è vera divisione, quindi5/2 = 2.5
. - Esponenziazione (ad esempio 4 ^ 4) in quanto ciò non implicherebbe simboli aggiuntivi se scritto normalmente a mano.
- Puoi creare nuovi numeri interi concatenando
xs
. Ad esempio puoi creare numeri interi4, 44, 444, 4444
.
È inoltre possibile utilizzare le parentesi per raggruppare i numeri semplicemente al fine di controllare l'ordine di valutazione degli operatori. Ad esempio non puoi combinare le parentesi con la concatenazione come in(4/4)(4/4) = (1)(1) = 11
.
Non è possibile utilizzare altri simboli e si applica l'ordine delle operazioni standard.
Il tuo programma dovrebbe generare, dato un x
nell'intervallo definito e un n
tra 0
e100
compreso, una soluzione corretta per quell'input se esiste. Altrimenti il tuo codice deve generare qualcosa per indicare che non esiste tale soluzione.
Devi essere in grado di eseguire il tuo invio fino al completamento sul tuo computer per qualsiasi valore di input di x
en
nell'intervallo consentito. Questo è il golf del codice, quindi vince la soluzione più breve.
Questa vecchia domanda correlata utilizza più operatori (e solo 4s) e quindi tutti i numeri da 0 a 100 sono risolvibili, il che non sarà vero per questa sfida.
Ingresso e uscita
Il tuo codice accetta due numeri interi x
e n
come input e dovrebbe generare una soluzione (o un'indicazione che non esiste una soluzione) in qualsiasi formato leggibile dall'uomo che ritieni conveniente. Input 4 6
significherebbe "Usando fino a quattro 4, ad esempio il numero 6". Quindi se l'input è 4 6
l'output potrebbe essere (4+4)/4+4
.