Il matto professore di matematica vuole codificare tutte le loro ricerche usando un sistema sicuro di volgere anche il più furbo dei suoi concorrenti!
A tal fine, il professore ha deciso di cambiare la base non solo del numero che sta scrivendo, ma di ogni singola cifra in quel numero, in base al luogo in cui si trova la cifra (contando da destra, a partire da 1). Per esempio:
Il numero 0 ha una cifra, quindi è rappresentato in base 1: 0
Il numero 1 avrebbe una cifra nella base dieci, ma nel sistema del nostro professore non è valido. Il primo posto è riservato solo alle cifre della base 1! Ciò significa che deve essere portato al secondo posto dove è consentita la base 2: 10
Il numero 2 richiede almeno la base 3 per essere scritto: 100
Ma ora il numero 3 può essere scritto cambiando la cifra in secondo luogo: 110
e 4 in questo modo: 200
Ecco alcuni altri esempi per aiutarti a ottenere l'idea:
5: 210
6: 1000
7 1010
8: 1100
9: 1110
10: 1200
11: 1210
12: 2000
13: 2010
14: 2100
15: 2110
16: 2200
17: 2210
18: 3000
Usando questo sistema le note del professore non avranno alcun senso per nessuno tranne loro, e potranno finalmente conquistare il mondo !!!! dormire bene la notte.
Naturalmente il metodo di codifica deve essere il più oscuro possibile.
Il tuo compito è scrivere 10 frammenti di codice, ognuno dei quali rappresenta una delle 10 cifre di base
0 1 2 3 4 5 6 7 8 9
che se combinato nell'ordine del numero da convertire produrrà un numero scritto nel sistema di numerazione diabolica del professore (il metodo di output può essere di tua scelta ma deve essere un numero leggibile dall'uomo usando solo le cifre 0-9)
Ad esempio se i miei frammenti sono:
0 = SCIMMIA 1 = ESEMPIO, 2 = CODICE, 3 = GOLF e 9 = TEST
poi
19 = EXAMPLETEST -> 3010
20 = CODEMONKEY -> 3100
21 = ESEMPIO CODICE -> 3110
22 = CODICE CODICE -> 3200
23 = CODEGOLF -> 3210
Non è necessario prendere in considerazione numeri di input con più di 10 cifre o numeri negativi, anche se se si desidera scrivere il codice per cifre aggiuntive si otterranno ulteriori complimenti. Questo è il golf del codice, quindi la risposta più breve (usando i totali di byte combinati di tutti i frammenti) vince e le scappatoie standard non sono consentite.
ADDENDUM: Prima che qualcuno inizi a stabilire se 0 è la rappresentazione corretta di 0 nella base 1, vorrei ricordare che questo professore è pazzo. Convivici.