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

她冥思苦相了好久,貌似摸到了一点规律,可是她不知道自己的规律找的对不正确,所以须要你来写一个程序来推断。


输入格式

每行一个n(1<=n<232).

输出

对于输入的n,输出第n项。

第一项:1/1

第二项:1/2

第三项:  2/1

第四项:3/1

第五项:2/2.


例子输入

3
14
7
12345

例子输出

2/1
2/4
1/4
59/99

代码:

#include<stdio.h>
int main()
{
	long long n, i;
	while(scanf("%lld", &n) == 1){
		for(i = 0; i <= n; i ++){
			if(i <= n)
			 n-=i;
			 else
			 break;
		}
		if(n){
			if(i%2 == 0)
			printf("%lld/%lld
", n, i-n+1);
			else
			printf("%lld/%lld
", i-n+1, n);
		}
		else{
			if(i%2 == 0)
			printf("1/%lld
", i-1);
			else
			printf("%lld/1
", i-1);
		}
	//	printf("%I64d
", i);
	}
	
} 


原文地址:https://www.cnblogs.com/mfrbuaa/p/5074932.html