Angenommen, wir beginnen mit der unendlichen Liste der Primzahlen:
[2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, ...
Dann nehmen wir die absoluten Unterschiede zwischen jedem Zahlenpaar wiederholt:
[1, 2, 2, 4, 2, 4, 2, 4, 6, 2, 6, 4, 2, 4, 6, 6, 2, 6, 4, ...
[1, 0, 2, 2, 2, 2, 2, 2, 4, 4, 2, 2, 2, 2, 0, 4, 4, 2, ...
[1, 2, 0, 0, 0, 0, 0, 2, 0, 2, 0, 0, 0, 2, 4, 0, 2, ...
[1, 2, 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 2, 2, 4, 2, ...
Beachten Sie, dass die führende Zahl jedes Mal 1 ist. Gilbreaths Vermutung ist die Vorhersage, dass dies für immer der Fall ist.
Die führende Zahl würde nur dann aufhören, eine 1 zu sein, wenn die nächste Zahl weder eine 0 noch eine 2 wäre. Die zweite Zahl würde nur dann keine 0 oder eine 2 sein, wenn die Zahl danach weder eine war 0 noch eine 2. Und so weiter.
Der Index der frühesten Zahl mit Ausnahme der führenden 1, die weder eine 0 noch eine 2 ist, kann zwischen zwei aufeinanderfolgenden Folgen niemals um mehr als 1 abfallen. Diese Tatsache wurde verwendet, um eine sehr starke Untergrenze festzulegen, wenn eine Sequenz, wenn überhaupt, möglicherweise keine 1 als erstes Element hat.
In dieser Herausforderung erhalten Sie den Index einer Sequenz und müssen den Index der ersten Zahl in der Sequenz ausgeben, die nicht die führende 1 und keine 0 oder 2 ist.
Zum Beispiel in der vierten absoluten Differenzsequenz oben:
[1, 2, 0, 0, 0, 0, 2, 2, 2, 2, 0, 0, 2, 2, 4, 2, ...
Der erste Eintrag, der weder eine Null noch eine Zwei ist, mit Ausnahme des ersten Eintrags, ist die 15. Position mit einem Index von 14 Nullen. Wenn die Eingabe also 4 wäre, würden Sie 14 ausgeben.
Für Eingaben von 1 bis 30 sollten die Ausgaben sein:
[3, 8, 14, 14, 25, 24, 23, 22, 25, 59, 98, 97, 98, 97, 174, 176, 176, 176, 176, 291, 290, 289, 740, 874, 873, 872, 873, 872, 871, 870]
Dies ist OEIS A000232 .
Dies setzt voraus, dass Sie 1 indizierte Eingänge und 0 indizierte Ausgänge haben. Sie können Ihre Eingaben und Ausgaben beginnend mit beliebigen konstanten Ganzzahlen indizieren, solange Sie den Bereich der Eingaben akzeptieren können, der allen Sequenzen entspricht.
Anforderungen: Ihre Lösung darf bei einer Eingabe von bis zu 30 höchstens 1 Minute lang ausgeführt werden. Wenn sie nah genug ist, dass sie von den Computerspezifikationen abhängt, ist sie zulässig.
Kürzester Code gewinnt.