Ihre Aufgabe ist es, eine Zahl im folgenden Format zu zerlegen.
Dies ähnelt der Basiskonvertierung, mit der Ausnahme, dass Sie die digits
in der Basis auflisten, anstatt sie aufzulisten values
, sodass sich die Liste zur Eingabe addiert.
Wenn die angegebene Basis ist n
, muss jede Nummer in der Liste in der Form k*(n**m)
, wo 0<=k<n
und m
in der gesamten Liste eindeutig sein.
Technische Daten
- Beliebiges vernünftiges Eingabe- / Ausgabeformat. Ihr Programm / Funktion nimmt 2 Ein- und Ausgänge einer Liste.
- Die Ausgabeliste kann in beliebiger Reihenfolge sein.
0
können ausgeschlossen oder eingeschlossen werden.- Führen
0
ist erlaubt. - Einbauten sind erlaubt .
Testfälle
number base converted list
input1 input2 output
123456 10 [100000,20000,3000,400,50,6] or [6,50,400,3000,20000,100000]
11 2 [8,2,1] or [0,0,0,0,8,0,2,1]
727 20 [400,320,7]
101 10 [100,1] or [100,0,1]
Wertung
Das ist Code-Golf . Kürzeste Lösung in Bytes gewinnt.
code-golf
number
sequence
number-theory
base-conversion
code-golf
bitwise
hashing
code-golf
string
ascii-art
whitespace
code-golf
math
code-golf
code-golf
image-processing
counting
code-golf
math
arithmetic
checksum
code-golf
code-golf
math
arithmetic
number-theory
code-golf
array-manipulation
random
code-golf
string
code-golf
math
ascii-art
base-conversion
code-golf
graphical-output
geometry
3d
code-golf
math
linear-algebra
matrix
code-golf
math
number
sequence
code-golf
array-manipulation
code-golf
math
matrix
linear-algebra
code-golf
number
sequence
counting
code-golf
string
code-golf
string
restricted-source
quine
sorting
code-golf
string
geometry
code-golf
string
code-golf
networking
code-golf
base-conversion
code-golf
math
matrix
code-golf
arithmetic
linear-algebra
matrix
code-golf
number
arithmetic
grid
code-golf
number
source-layout
code-golf
string
bitwise
checksum
code-golf
array-manipulation
code-golf
string
probability-theory
code-golf
tips
code-golf
sequence
code-golf
string
math
sequence
calculus
code-golf
string
palindrome
bioinformatics
code-golf
math
combinatorics
counting
permutations
code-golf
parsing
logic-gates
code-golf
arithmetic
number-theory
combinatorics
code-golf
math
sequence
polynomials
integer
code-golf
string
ascii-art
chess
code-golf
string
code-golf
number
code-golf
string
ascii-art
parsing
code-golf
code-golf
number
natural-language
conversion
code-golf
arithmetic
code-golf
string
code-golf
ascii-art
decision-problem
Undichte Nonne
quelle
quelle
JavaScript (ES6), 47 Byte
quelle
Gelee, 12 Bytes
Kann etwas kürzer sein ...
Probieren Sie es online!
quelle
lḞr0⁴*×b
sollte arbeiten.0r⁴*³%I
.lr0⁴*×b
hat die gleiche Byteanzahl ohne alle zusätzlichen Nullen.Pyth -
1211 BytesNur ein FGITW, kann kürzer sein.
Test Suite .
quelle
_
für ein Byte :)J,
20 bis19 BytesVerwendung
Erläuterung
quelle
CJam, 16 Bytes
Ein unbenannter Block, der die Basis und die Nummer auf dem Stapel erwartet (in dieser Reihenfolge) und durch die Ziffernliste ersetzt (einschließlich interner Nullen ohne führende Nullen).
Teste es hier.
Erläuterung
quelle
TSQL, 68 Bytes
quelle
Python 2, 44 Bytes
Ausgabe von niedrigstwertig bis höchstwertig mit vielen zusätzlichen Nullen.
Ausgabe von höchstem bis niedrigstem Wert:
Recurse, wobei die Ziffern wiederholt
n
mit divmod entfernt werden, während der Platzwertmultiplikator erhöht wirdc
.quelle
range(-n,1)
stattdessen tunrange(n,-1,-1)
?range(n)
.Rubin,
3534 BytesDies ist eine Portierung von xnor Python Antwort , aber er druckt
n
mal so den Testfall727 20
druckt7
,320
,400
und 7240
s. Golfvorschläge sind willkommen.Edit: 1 Byte Danke an Jordan.
quelle
n.times{|i|p ...}
.Mathematica, 12 Bytes (nicht konkurrierend)
Ich frage mich, ob Wolfram Research diese Funktion geschaffen hat, nachdem ich die Herausforderung des OP gesehen habe!
Dies wurde in Version 11.0 (August 2016) eingeführt.
quelle
Mathematica, 46 Bytes
Erläuterung:
quelle
DiagonalMatrix
. Bitte erklären Sie, wie es in diesem Fall funktioniert.Schläger, 82 Bytes
Ich bin ein Gewinner (!)
quelle
<n 1
nicht? (Ich kenne Racket überhaupt nicht)'
. Das ist jedoch eine gute Frage.<
ist nur eine Variable mit einer daran gebundenen Funktion)JavaScript (ES7), 68 Byte
Prüfung
Testanwendungen
Math.pow
für die Browserkompatibilität.quelle
**
ist aber kein gültiger JavaScript-Operator richtig?JavaScript, 75 Byte
Nur zum Spaß :) Es könnte mehr Golf gespielt werden, aber ich bin mir nicht sicher, wie.
ES7, 66 Bytes
Wenn ES7 erlaubt ist, dann:
quelle
O , 17 Bytes
Zwei Notizen:
Der dritte Testfall funktioniert aufgrund eines Fehlers bei der Basiskonvertierung nicht. Siehe Phase / o # 68 .
Dies funktioniert im Online-Interpreter nicht.
b
wurde noch nicht implementiert.quelle
> <> 28 Bytes
Erwartet, dass die Eingabewerte beim Programmstart auf dem Stack vorhanden sind.
Da> <> keine Listenobjekte enthält, wird die Ausgabe als durch Zeilenumbrüche getrennte Werteliste mit den Einheiten in der ersten Zeile dargestellt. Ein Beispiellauf:
@OP, wenn dies kein akzeptables Ausgabeformat ist, lass es mich wissen und ich bearbeite die Antwort entsprechend.
quelle
PHP, 55 Bytes
Verwendet die Windows-1252-Codierung.
Laufen Sie wie folgt (
-d
nur aus ästhetischen Gründen hinzugefügt):quelle
C #, 77 Bytes
quelle
Eigentlich 17 Bytes (nicht konkurrierend)
Probieren Sie es online!
Diese Übermittlung ist nicht konkurrierend, da der
♀
Befehl nach dieser Aufforderung hinzugefügt wurde.Erläuterung:
quelle
♀
? (Ab vier Bytes golfen)Pip , 13 Bytes
Es stellte sich heraus, dass die altmodische Vorgehensweise kürzer war als die Verwendung des
TB
Basisumwandlungsoperators. Der Code führt eine while-Schleife aus, bisa
(die Nummer) ist0
. Bei jeder Iteration wird es gedruckta%o
und von subtrahierta
.o
wird vorinitialisiert1
und mitb
(der Basis) jeder Iteration multipliziert . (Dieser Ansatz behält alle0
s bei und fügt auch einen führenden hinzu0
.)Probieren Sie es online!
quelle