Hier die ersten 100 Zahlen einer einfachen Sequenz:
0,1,0,2,1,4,3,7,6,11,10,16,15,22,21,29,28,37,36,46,45,56,55,67,66,79,78,92,91,106,105,121,120,137,136,154,153,172,171,191,190,211,210,232,231,254,253,277,276,301,300,326,325,352,351,379,378,407,406,436,435,466,465,497,496,529,528,562,561,596,595,631,630,667,666,704,703,742,741,781,780,821,820,862,861,904,903,947,946,991,990,1036,1035,1082,1081,1129,1128,1177,1176,1226
Wie funktioniert diese Sequenz?
n: 0 1 2 3 4 5 6 7 8 9 10 11 12
0, 1-1=0, 2-1=1, 4-1=3, 7-1=6, 11-1=10, 16-1=15,
0+1=1, 0+2=2, 1+3=4, 3+4=7, 6+5=11, 10+6=16, 15+7=22
a(0) = 0
- Für jede ungerade
n
(0-indiziert) ist esa(n-1) + X
(woX=1
und erhöht sich bei jedem Zugriff um 1). - Für jede gerade
n
(0-indizierte) ist esa(n-1) - 1
Herausforderung:
Einer von:
- Geben Sie bei einer Ganzzahl
n
dien
'te Zahl in der Sequenz aus. - Geben Sie bei einer Ganzzahl
n
die erstenn
Zahlen der Sequenz aus. - Geben Sie die Sequenz auf unbestimmte Zeit aus, ohne eine Eingabe ( oder eine leere, nicht verwendete Eingabe ) zu übernehmen.
Herausforderungsregeln:
- Der Eingang
n
kann sowohl 0- als auch 1-indiziert sein. - Wenn Sie einen Teil der Sequenz ausgeben, können Sie eine Liste / ein Array verwenden und mit einem beliebigen Trennzeichen (Leerzeichen, Komma, Zeilenumbruch usw.) auf STDOUT ausgeben. Ihr Anruf.
- Bitte geben Sie an, welche der drei Optionen Sie in Ihrer Antwort verwendet haben.
- Sie müssen mindestens die ersten 10.000 Nummern unterstützen (die 10.000ste Nummer ist
12,497,501
).
Allgemeine Regeln:
- Das ist Code-Golf , also gewinnt die kürzeste Antwort in Bytes.
Lassen Sie sich von Code-Golf-Sprachen nicht davon abhalten, Antworten mit Nicht-Codegolf-Sprachen zu veröffentlichen. Versuchen Sie, für jede Programmiersprache eine möglichst kurze Antwort zu finden. - Für Ihre Antwort gelten Standardregeln. Daher dürfen Sie STDIN / STDOUT, Funktionen / Methoden mit den richtigen Parametern und vollständige Programme vom Rückgabetyp verwenden. Ihr Anruf.
- Standardlücken sind verboten.
- Fügen Sie nach Möglichkeit einen Link mit einem Test für Ihren Code hinzu.
- Fügen Sie nach Möglichkeit auch eine Erklärung hinzu.
Testfälle:
Pastebin mit den ersten 10.001 Nummern in der Sequenz. Fühlen Sie sich frei zu wählen, was Sie möchten.
Einige höhere Zahlen:
n (0-indexed) Output:
68,690 589,772,340
100,000 1,249,975,000
162,207 3,288,888,857
453,271 25,681,824,931
888,888 98,765,012,346
1,000,000 124,999,750,000
ÎGDN+D<
generiert die Sequenz, aber das n-te Element zu greifen scheint ... in 3 Bytes schwierig zu sein.