P1014 [NOIP1999 普及组] Cantor 表

题目描述

现代数学的著名证明之一是 Georg Cantor 证明了有理数是可枚举的。他是用下面这一张表来证明这一命题的:

 

…

我们以 Z 字形给上表的每一项编号。第一项是 1/1,然后是 1/2,2/1,3/1,2/2,…

输入格式

整数N(1≤N≤107)。

输出格式

表中的第 N项。

输入输出样例

输入 #1
7
输出 #1
1/4
#include<bits/stdc++.h>
using namespace std;
int main(){
int i=0,j=0,n;//i是每个斜线上的总数 
cin >>n;
while(j<n){
i++;
j+=i;
}
if(i%2==0) cout<<i-j+n<<'/'<<1-n+j;
if(i%2==1) cout <<1-n+j<<'/'<<i-j+n;
return 0;
}

 

posted @ 2021-03-13 15:44  我要考977  阅读(260)  评论(0)    收藏  举报