Eine streng nicht-palindromische Zahl N ist eine Zahl, die in keiner Basis ein Palindrom ist (in den Basen 2 bis N-2). Diese Nummern sind im OEIS aufgeführt
Zum Beispiel ist die Zahl 19
in der Basis 2,3,4,5,6, ... 17: 10011
, 201
, 103
,34
, 31
, ... 12
. Keine dieser Darstellungen ist palindrom, daher ist die Zahl streng genommen nicht palindrom.
Für diese Herausforderung müssen Sie einen Wahrheitswert zurückgeben, wenn die Zahl nicht palindromisch ist, andernfalls einen falschen Wert .
- Sie können davon ausgehen, dass die an Sie übergebene Zahl größer oder gleich 0 ist.
- Ihr Programm sollte für Werte bis zur ganzzahligen Größe Ihrer Sprachen funktionieren.
Testfälle:
Wahrheit:
0
1
2
3
4
6
11
19
47
53
79
103
389
997
1459
Falsch:
5
7
8
9
10
13
16
43
48
61
62
101
113
211
1361
Dies ist ein Code-Golf , also machen Sie Ihre Antworten so kurz wie möglich!
code-golf
base-conversion
decision-problem
palindrome
Nathan Merrill
quelle
quelle
result < n-2
Häkchen hinzugefügt wird , denke ich.Antworten:
C 82 Bytes
Ideone es!
Erläuterung
Dieser Code kehrt
n
in der Basis umb
und speichert inr
:Die äußere Schleife zählt die Anzahl der Basen von
2
bis,n-1
in denenn
sich ein Palindrom befindet.Wenn
n
es sich nicht um ein Palindrom handelt, ist die Anzahl1
(n
muss ein Palindrom in der Basis seinn-1
).quelle
Python 2, 71 Bytes
Die Ausgabe erfolgt über den Exit-Code , wobei 0 wahr und 1 falsch ist. Teste es auf Ideone .
quelle
SILOS , 206 Bytes
Probieren Sie es online!
Port of meine Antwort in C .
quelle
Haskell,
7568 Bytesquelle
Gelee , 9 Bytes
Probieren Sie es online! oder überprüfen Sie alle Testfälle .
Wie es funktioniert
quelle
<3
.Mathematica,
5843 BytesTIL,
#~IntegerReverse~i
das die Ziffern der Eingabe umkehrt, wenn es in Basis i geschrieben wird.quelle
Pyth,
1210 BytesMit Dennis 'Trick zwei Bytes gespart.
Probieren Sie es online!
Erläuterung:
quelle
JavaScript (ES6), 83 Byte
quelle
Perl6,
110,72,65Basis konnte nicht verwendet werden, da diese für eine Basis über 36 defekt ist.
Bisherige Versuche
quelle
.polymod
mit einer unendlichen Liste von Teilern.1362.polymod: 226 xx *
{...}
und-> $_ {...}
sind fast genau das gleiche. Sie müssen das Lambda auch nirgendwo aufbewahren, damit Sie es entfernen könnenmy &f =
.Brachylog , 14 Bytes
Probieren Sie es online!
Ausgaben durch Erfolg oder Misserfolg von Prädikaten, die gedruckt
true.
oderfalse.
als Programm ausgeführt werden.quelle
C 77 Bytes
rekursive Übung ... ich ändere (b + 2> = n) mit (b + 3> n) ohne Fehlerbehebung ...
quelle
C 129 Bytes
quelle
PHP, 68 Bytes
Nimmt Eingaben von STDIN, geht mit
1
für falsch,0
für wahr. Laufen Sie mit-R
.quelle
APL (NARS), Zeichen 47, Bytes 94
Wo
{(⍺⍴⍨⌊1+⍺⍟⍵)⊤⍵}
wäre die Funktionsumwandlung ein positives Omega in Zahlenbasis Alpha, und wo{⍵≡⌽⍵}
wäre die Funktionsprüfung Palindrom ... Test:quelle