La sfida
Dato 3 numeri X
, Y
e Z
nella base di B
, trovare B
un'ase in cui l'aggiunta di X
e Y
rendimenti Z
. Gli ingressi x = 20
, Y = 12
e Z = 32
potrebbe produrre 5
a causa 20 + 12 = 32
della base 5.
- Si può presumere che ci sarà sempre una base in cui l'aggiunta è corretta (ci sono casi in cui non esiste una base, grazie a @ MasonWheeler e @ Not That Charles per alcuni esempi).
- La base più bassa possibile è 1. Puoi usare 1 o 0 come cifre in unario, ma non puoi mescolarli.
I / O
- Le cifre dei numeri di input saranno numeri interi non negativi.
- Si può presumere che i numeri di input contengano zeri iniziali, quindi hanno una lunghezza specifica (o comunque uguale).
- Puoi prendere i numeri nel formato più conveniente, purché non sia preelaborato. Ciò include il formato complessivo dei tre numeri di input e il formato delle cifre di ciascuno di quei numeri. Si prega di chiarire quale formato si utilizza.
- Se esistono più basi possibili, è possibile produrre tutte o solo una di esse.
- Si può presumere che la base e i numeri di input rientrino nei limiti numerici della propria lingua.
Regole
- Funzione o programma completo consentiti.
- Regole predefinite per input / output.
- Si applicano scappatoie standard .
- Questo è code-golf , quindi vince il conteggio dei byte più basso. Tiebreaker è una presentazione precedente.
Casi test
Il formato di input qui è un elenco di numeri interi per rappresentare ciascun numero. Le tre liste sono separate da virgole.
Si noti che a volte sono possibili più basi. Qui viene emessa una sola soluzione (casuale).
[12, 103], [4, 101], [16, 204] -> 349 [4, 21, 25], [5, 1, 20], [9, 23, 17] -> 28 [16, 11], [25, 94], [41, 105] -> 147 [2, 140], [21, 183], [24, 100] -> 223 [8, 157], [1, 28], [9, 185] -> 227 [2, 158], [88], [3, 12] -> 234 [8, 199], [1, 34], [9, 233] -> 408 [3, 247], [7, 438], [11, 221] -> 464 [3, 122], [3, 2], [6, 124] -> 480 [6, 328], [3, 31], [9, 359] -> 465 [2, 1, 0, 0, 0, 0], [1, 2, 0, 0, 1, 0, 1, 0], [1, 2, 2, 1, 1, 0, 1, 0] - > 3 [16, 105], [16, 120], [33, 84] -> 141 [15, 60], [9, 30], [24, 90] -> 268 [2, 0], [1, 2], [3, 2] -> 5 [1, 3, 3, 7], [1, 2, 3], [1, 4, 6, 0] -> 10 [0], [1, 12, 8], [1, 12, 8] -> 16 [1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1], [1, 0, 0, 1, 0, 1, 1, 1, 0, 0 , 1], [1, 0, 0, 1, 1, 0, 1, 1, 1, 1, 0, 0, 1, 0] -> 2 [1], [1], [1,1] -> 1
Puoi generare ulteriori casi di test con questo programma Pyth . Immettere una base sulla prima riga e i valori decimali per X
e Y
sulle due righe seguenti.
Inoltre puoi usare questo programma Pyth per creare più casi di test contemporaneamente usando valori casuali. Basta inserire la quantità desiderata di casi di test nell'input.
Buona programmazione!