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; }

浙公网安备 33010602011771号