题目描述
现代数学的著名证明之一是Georg Cantor证明了有理数是可枚举的。他是用下面这一张表来证明这一命题的:
1/1, 1/2 , 1/3 , 1/4, 1/5, …
2/1, 2/2 , 2/3, 2/4, …
3/1 , 3/2, 3/3, …
4/1, 4/2, …
5/1, …
… 我们以Z字形给上表的每一项编号。第一项是1/11,然后是1/2,2/1,3/1,2/2,1/3,…
输入输出格式
输入格式:
整数N(1≤N≤10000000)
输出格式:
表中的第N项
输入输出样例
输入样例#1:
7
输出样例#1:
1/4
解题思路:
可以把原来的数据顺时针方向旋转45°。这样所有的数据就是一个很规则的三角形了,每行开头的第一个数的分子都是行号n,分母都是1,每行最后一个数字分子是1,分母是n。第1行就一个数字1/1。第n行(n为奇数时),数字按照n/1,n-1/2,……,2/n+1-2,1/n+1-1这样输出。第n行(n为偶数时),数字按照1/n+1-1,2/n+1-2……n-1/2,n/1这样输出。想要找到第K项数据,先要求出n。
当1+2+3……+n>=k,1+2+3……+(n-1)<k时,就找到了n的值。
然后把1+2+3……+(n-1)的和sum求出来。在第n行里从第一个数开始计数,每数一个数