はじめに(無視してもよい)
すべての正の数を規則正しい順序(1、2、3、...)で並べるのは少し退屈ですよね?そのため、すべての正数の順列(再編成)に関する一連の課題があります。これは、このシリーズの3番目の課題です(1番目と2番目の課題へのリンク)。
この課題では、各行の合計が素数になるように、長さが増加する行に自然数を配置します。これについて本当に素晴らしいと思うのは、すべての自然数がこの配置にあるということです。番号はスキップされません!
この配置の視覚化は次のようになります。
row numbers sum
1 1 1
2 2 3 5
3 4 5 8 17
4 6 7 9 15 37
5 10 11 12 13 21 67
6 14 16 17 18 19 23 107
etc.
この三角形の行から要素を読み取ることができます。最初の20個の要素は、1、2、3、4、5、8、6、7、9、15、10、11、12、13、21、14、16、17、18、19(はい、ありますこのシーケンスに隠された新しい注文の歌)。
これは「純粋なシーケンス」チャレンジであるため、タスクは入力として特定のnに対してa (n )を出力です。ここで、a (n )はA162371です。
仕事
整数入力与えられると、整数形式で出力します。
は、自然数の辞書式に最も早い順列の番目の要素として定義され、行によって読み取られる三角形として見た場合、n> 1の場合、行の合計は素数になります。自然数の最初の辞書式順列は1から始まるため、は1です。この定義ではおよびは素数である必要はありません。これは、OEISシーケンスA162371です。
注:ここでは、1ベースのインデックス付けが想定されています。0ベースのインデックスを使用できます。そのためなど。これを使用することを選択した場合は、回答にこれを記載してください。
テストケース
Input | Output
---------------
1 | 1
5 | 5
20 | 19
50 | 50
78 | 87
123 | 123
1234 | 1233
3000 | 3000
9999 | 9999
29890 | 29913