In dieser Frage habe ich eine "Ketten" -Funktion als eine Funktion definiert, die:
ist eine Permutation, dh jeder Wert wird genau einem Wert zugeordnet und von genau diesem Wert zugeordnet.
und ermöglicht, dass jeder Wert durch wiederholte Anwendung der Funktion oder ihrer Umkehrung von jedem anderen Wert erhalten werden kann.
Es gibt viele Funktionen, die dies tun, und einige davon sind ziemlich einfach (siehe die Antworten auf diese Frage). Jetzt definieren wir eine separate Klasse von Funktionen, die ich "verwobene" Funktionen nennen werde. Eine verwobene Funktion ist eine Funktion auf einer Menge A , die zwei unendliche Partitionen a 0 und a 1 hat, so dass die Funktion eine Kettenfunktion sowohl auf einer 0 als auch auf einer 1 ist .
Dies bedeutet, dass kein Wert in einer 0 einem Wert in einer 1 unter der Funktion zugeordnet werden kann oder umgekehrt.
Aufgabe
Ihre Aufgabe ist es, einen Code zu schreiben, der eine verwobene Funktion für die positiven ganzen Zahlen ausführt oder definiert. Ihre Funktion kann alles sein, solange sie die Kriterien für die Verflechtung erfüllt. Sie sollten eine Erklärung hinzufügen, warum Ihre Funktion in der Antwort verwoben ist.
Dies ist eine Code-Golf- Frage, daher werden die Antworten in Bytes bewertet, wobei weniger Bytes besser sind.
Antworten:
Python,
464237 Bytes5 Bytes dank @notjagan gespeichert
Probieren Sie es online aus!
Iteriert die geraden und ungeraden Zahlen mit den Schritten 4 und den Links auf 2 und 3:
quelle
JavaScript,
3024 BytesSequenzen:
... 19 15 11 7 3 1 5 9 13 17 21 ...
... 18 14 10 6 2 4 8 12 16 20 24 ...
Code-Auszug
quelle
Dyalog APL,
2422 BytesProbieren Sie es online aus!
Gleiche Ketten wie meine Python-Antwort .
quelle