Eine zyklische Zahl besteht aus einer Anzahl von "n" Ziffern, die bei Multiplikation mit 1, 2, 3, ... n die gleichen Ziffern ergeben, jedoch in einer anderen Reihenfolge.
Beispielsweise ist die Zahl 142.857 eine zyklische Zahl, da 142.857 × 2 = 285.714, 142.857 × 3 = 428.571, 142.857 × 4 = 571.428 und so weiter. Bestimmen Sie bei einer Ganzzahleingabe, ob es sich um eine zyklische Zahl handelt, indem Sie einen Wahrheitswert ausgeben, wenn dies der Fall ist, und einen falschen Wert, wenn dies nicht der Fall ist.
Der Eingang kann auch führende Nullen enthalten, z. B. 0344827586206896551724137931
Dies liegt daran, dass 142857 die einzige zyklische Dezimalzahl ist, wenn führende Nullen für Ziffern nicht zulässig sind.
Da es sich um Code-Golf handelt, gewinnt die kürzeste Antwort in Bytes!
quelle
Antworten:
05AB1E ,
96 BytesDanke an Emigna für das Speichern von 3 Bytes!
Erläuterung:
Verwendet die 05AB1E- Codierung. Probieren Sie es online!
quelle
¦‚˜
?0588235294117647
.0212765957446808510638297872340425531914893617
wie in den Kommentaren einer anderen Antwort erwähnt. Wenn ich die sortierten Zahlen betrachte, würde ich annehmen, dass sie falsch sind, aber wenn Nullen entfernt werden, wird sie wahr.Eigentlich 18 Bytes
Probieren Sie es online! (Erwartet zitierte Eingabe)
Erläuterung:
quelle
Python, 86 Bytes
Probieren Sie es online!
Zahlen als Zeichenketten eingeben.
quelle
PHP, 64 Bytes
Online Version
quelle
Haskell,
36333245 BytesAnwendungsbeispiel:
Ich glaube nicht, dass dieser Algorithmus einer Erklärung bedarf.
TOL
Vielen Dank für Vorschläge: Generischer Anzeigename, Laikoni.
Danke für die Korrektur: Antony Hatchkins.
EDIT Nope, scheitert an "33".
quelle
<1
anstelle von verwenden==0
? Auch hier ist ein TIO-Link: Probieren Sie es online!Gleichstrom,
2425 BytesGibt "0" aus, wenn die Nummer nicht zyklisch ist, andernfalls "1". Erfordert die Eingabe der Nummer als Zeichenfolge.
Anwendungsbeispiel:
TOL
Erläuterung: Der gleiche Algorithmus wie bei meiner Haskell-Übermittlung.
EDIT Nope, scheitert an "33".
quelle
Mathematica, 81 Bytes
Probieren Sie es online!
Eingabezeichenfolge
Eingang
Ausgabe
quelle
FromDigits
ist kürzer alsToExpression