Cantor 表(找规律)
登录—专业IT笔试面试备考平台_牛客网
https://ac.nowcoder.com/acm/contest/1069/I
解法:找规律
- 1/1
- 1/2 2/1
- 3/1 2/2 1/3
- 1/4 2/3 3/2 4/1
- 5/1 4/2 3/3 2/4 1/5
相信大家可以找到规律吧!
如果是偶数,分子就从1到该偶数,分母就从该偶数到1
如果是奇数,分子就从该奇数递减到1,分母就从1到该奇数
因此,只要找到在第几行的第几个数字即可
#include<bits/stdc++.h> using namespace std; typedef long long ll; int main() { ll n,t=1,i,j; cin>>n; while(n-t>0) { n=n-t; t++; } if(t%2==0) { cout<<n<<"/"<<t-n+1<<endl; } else cout<<t-n+1<<"/"<<n<<endl; return 0; }