Intro
Die Schaltsequenz ist wie folgt definiert:
Beginnen Sie mit nPersonen, die in einem Kreis stehen ( 6für dieses Beispiel).
1 2
6 3
5 4
Ausgehend von der Person 1wird die Person entfernt, die sich links von der "ausgewählten" Person befindet.
1
6 3
5 4
Die entfernte Person kann die Entfernungsmethode "umschalten":
- Wenn die entfernte Person gerade ist (was in diesem Fall der Fall ist), befindet sich die nächste entfernte Person rechts von der nächsten "ausgewählten" Person.
- Wenn die entfernte Person ungerade ist, befindet sich die nächste entfernte Person links von der nächsten "ausgewählten" Person.
Die nächste ausgewählte Person ist auch von der zuvor entfernten Person abhängig.
- Wenn die entfernte Person gerade ist, befindet sich die nächste ausgewählte Person rechts von der zuvor ausgewählten Person.
- Wenn die entfernte Person ungerade ist, siehe oben, aber ersetzen Sie "rechts" durch "links".
Also ist die nächste gewählte Person dann 6.
Jetzt entfernen wir die Person rechts von 6, das ist 5:
1
6 3
4
Weil 5es seltsam ist, befindet sich die entfernte Person jetzt links. Die neu gewählte Person ist 1.
Wir entfernen jetzt 3:
1
6
4
Wir setzen diesen Prozess fort, bis wir 1 Nummer haben - in diesem Beispiel ist die endgültige Nummer 1. Also deshalb S(6) = 1.
Die ersten Zahlen sind:
n | S(n)
---------
1 | 1
2 | 1
3 | 3
4 | 1
5 | 5
6 | 1
7 | 3
8 | 6
9 | 5
10 | 6
11 | 9
Aufgabe
Ihre Aufgabe ist es, ein Programm (oder eine Funktion) zu erstellen, das bei Angabe mit der geringsten Anzahl von Bytes S(n)(die ndritte Nummer in der Schaltsequenz) zurückgibt n.
Beispiel für Ein- und Ausgänge:
1 -> 1
10 -> 6
13 -> 13
Sie erhalten garantiert eine positive Ganzzahl.
Dies ist Code-Golf , also gewinnt der kürzeste Code in Bytes!
Hinweis: Es gibt keine OEIS-Sequenz (was?), Um Ihnen die Suche zu ersparen.
2bleibt nie, aber tut 7?