自然数(0から始まる)を取り、それぞれ分子と分母である正の整数のペアを返す関数を作成します。斜めトラバーサルを使用します。以前にカウントされた数値はスキップする必要があります。(スキップした値のセットを記憶できます)
図:
赤はスキップされた値です
値:
- f(0)= 1、1
- f(1)= 2、1
- f(2)= 1、2
- f(3)= 1、3
- f(4)= 3、1(スキップに注意)
- f(5)= 4、1
- f(6)= 3、2
- f(7)= 2、3
- f(8)= 1、4
- f(9)= 1、5
- f(10)= 5、1(スキップに注意)
Rationalデータ構造とその操作が存在する場合は、それらを使用できます。最短のコードが勝ちます。
1
各対角線でカウントされた有理数の数は、その対角線の共通和のトーテント関数です。
—
Leaky Nun
このチャレンジは古いことを知っていますが、受け入れられたものより短い回答が存在するため、再度受け入れたい場合があります。
—
Esolanging Fruit