次のシーケンスを検討してください。
0 1 3 2 5 4 8 6 7 12 9 10 11 17 13 14 15 16 23 ...
かなりパターンレスに見えますよね?仕組みは次のとおりです。で始まり、整数0
でジャンプしn
、でn
始まり1
ます。これがシーケンスの次の番号です。次に、「スキップされた」番号を追加します。この番号はまだ昇順で表示されていません。次に、n
最後に追加された番号からインクリメントしてジャンプします。このパターンを繰り返します。
したがって、たとえば、到達する11
とになりますn=5
。増加n
しn=6
、にジャンプしてから17
、13 14 15 16
まだ追加されていないので追加します。次のジャンプはn=7
なので、シーケンスの次の要素は23
です。
チャレンジ
inputが与えられると、このシーケンスのth番目の項、シーケンスの最初の項をx
出力するか、シーケンスの項の無限リストを作成します。0インデックスまたは1インデックスを選択できます。x
x