创建一个采用自然数(从0开始,包括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
我知道这个挑战很旧,但是答案比接受的答案短,因此您可能需要重新接受。
—
硕果累累