Sei eine positive ganze Zahl bestehend aus Dezimalstellen . Sei eine andere positive ganze Zahl.
Für diesen Zweck bezeichnen wir als Nachahmer von wenn mindestens eine Liste positiver ganzer Zahlen so dass:B p 1 , p 2 , . . . , p n
B A B B A und heißen wechselseitige Nachahmer, wenn ein Nachahmer von und ein Nachahmer von .
Beispiel
853 und sind gegenseitige Nachahmer, weil:
und:
Die Herausforderung
Bei zwei positiven ganzen Zahlen und besteht Ihre Aufgabe darin, einen Wahrheitswert zu drucken oder zurückzugeben, wenn und reziproke Kopien sind, oder einen anderen falschen Wert.
Erläuterungen und Regeln
- Sie können und in jedem vernünftigen, eindeutigen Format verwenden (z. B. Ganzzahlen, Zeichenfolgen, Ziffernlisten usw.).
- B und können gleich sein. Wenn eine Zahl ein wechselseitiger Nachahmer ist, gehört sie zu A007532 .
- Anstelle wahrer / falscher Werte können Sie auch zwei unterschiedliche konsistente Werte zurückgeben.
- Für und muss Ihr Code in weniger als einer Minute abgeschlossen sein . Wenn es für höhere Werte zu lange dauert, muss es sie jedoch theoretisch lösen können.
- Das ist Code-Golf .
Testfälle
Truthy:
1 1
12 33
22 64
8 512
23 737
89 89
222 592
526 853
946 961
7 2401
24 4224
3263 9734
86 79424
68995 59227
32028 695345
Falsy:
1 2
3 27
9 24
24 42
33 715
33 732
222 542
935 994
17 2401
8245 4153
code-golf
decision-problem
integer
Arnauld
quelle
quelle
17 2401 -> false
. Ich bin fast darüber gestolpert.Antworten:
Brachylog , 19 Bytes
Probieren Sie es online!
Ausgänge
true.
oderfalse.
Erläuterung
quelle
2401
enthielt,0
das nicht mit der Art und Weise funktionierte, wie ich es überprüfte,I
das streng positiv war (weil ich es beidenI
und der Ziffer zugeordnet habe, um Bytes zu sparen)Schale , 17 Bytes
Probieren Sie es online! Beendet alle Testfälle unter 1000 in ca. 11 Sekunden.
Erläuterung
Warum es funktioniert
quelle
d
übernimmt das implizite Argument. Ich habe dies in der Erklärung klargestellt. 2. Ich habe ein Argument für die Richtigkeit des Programms hinzugefügt.Python 2 , 102 Bytes
Probieren Sie es online!
quelle
05AB1E ,
2622 BytesNimmt die Eingabe als Liste (dh
[526,853]
).Probieren Sie es online aus oder überprüfen Sie die meisten Testfälle in diesem Bereich
[1,999]
.Ähnlich wie meine alte Antwort weiter unten, mit der Ausnahme, dass die
[1,n]
Liste fest codiert[1,100]
ist und die kartesische Liste zweimal erstellt wird, und zwar einmal für jedes Input-Mapping, was den größten Leistungsengpass darstellt.Alte 26-Byte-Antwort, die für die Leistung besser ist:
In dieser Version habe ich einige Bytes eingetauscht, um die Leistung zu verbessern, damit sie
[1,1000]
problemlos ausgeführt werden kann. Testfälle, die Zahlen im Bereich enthalten,[1,9999]
werden mit TIO in etwa einer Sekunde ausgeführt. Testfälle im Bereich[10000,99999]
von ca. 10-15 Sekunden auf TIO. Darüber hinaus wird es eine Zeitüberschreitung geben.Probieren Sie es online aus oder überprüfen Sie alle Testfälle mit Zahlen im Bereich
[1,9999]
.Erläuterung:
quelle
Haskell , 77 Bytes
Probieren Sie es online!
quelle
Perl 6 ,
87 8469 Bytes-15 bytes dank nwellnhof!
Probieren Sie es online!
Anonymer Codeblock, der True oder False zurückgibt.
Erläuterung:
quelle
JavaScript (Node.js) ,
1169289868377 ByteProbieren Sie es online!
Erwarten Sie die Eingabe als
(A)(B)
.quelle
J , 56 Bytes
Probieren Sie es online!
Ja, geschachtelte explizite Definition!
Wie es funktioniert
quelle
Python 2 ,
149147143139132118108107106105 BytesProbieren Sie es online!
-4 Bytes, danke an Vedant Kandoi
quelle
>0
kann entfernt werden.not a
:a<1
.b==0
:b<1
b<0
funktioniert aber nichtJ, 68 Bytes
Ich dachte, J würde hier ganz gut abschneiden, aber es wurde härter als erwartet und ich würde mich über Vorschläge für weiteres Golfen freuen ...
Probieren Sie es online!
HINWEIS: Wir subtrahieren dort 3 Zeichen von der TIO-Anzahl, da
f=.
die Hauptfunktion nicht zähltungolfed
quelle