ここでは、簡単なシーケンスの最初の100個の番号:
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
このシーケンスはどのように機能しますか?
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
- 奇数
n
(0インデックス)ごとに、a(n-1) + X
(X=1
アクセスされるたびに1ずつ増加します) - 偶数
n
(0インデックス)ごとに、a(n-1) - 1
チャレンジ:
の一つ:
- 入力整数を指定すると、シーケンスの '番目の数を
n
出力n
します。 - 入力整数を指定すると、シーケンスの
n
最初のn
数を出力します。 - 入力を取得せずに(または空の未使用入力を取得せずに)シーケンスを無期限に出力します。
チャレンジルール:
- 入力に
n
は、0または1の両方のインデックスを付けることができます。 - シーケンス(の一部)を出力する場合、リスト/配列を使用して、任意の区切り文字(スペース、コンマ、改行など)を使用してSTDOUTに出力できます。あなたの電話。
- 回答で使用した3つのオプションのいずれかを明記してください。
- 少なくとも最初の10,000個の数字をサポートする必要があります(10,000番目の数字はです
12,497,501
)。
一般的なルール:
- これはcode-golfであるため、バイト単位の最短回答が優先されます。
コードゴルフ言語では、コードゴルフ以外の言語で回答を投稿しないようにしてください。「任意の」プログラミング言語の可能な限り短い答えを考えてみてください。 - 回答には標準の規則が適用されるため、STDIN / STDOUT、適切なパラメーターと戻り値型、完全なプログラムを持つ関数/メソッドを使用できます。あなたの電話。
- デフォルトの抜け穴は禁止されています。
- 可能であれば、コードのテストへのリンクを追加してください。
- また、可能であれば説明を追加してください。
テストケース:
シーケンス内の最初の10,001番号の貼り付けビン。好きなものを自由に選んでください。
いくつかのより高い数字:
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<
シーケンスを生成しますが、n番目の要素をつかむように見えます... 3バイトでハード。