Cantor 表(找规律)

登录—专业IT笔试面试备考平台_牛客网

https://ac.nowcoder.com/acm/contest/1069/I

解法:找规律
  1.     1/1
  2.     1/2    2/1
  3.     3/1    2/2    1/3
  4.     1/4    2/3    3/2    4/1
  5.     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;
}

全部评论

相关推荐

整顿职场的柯基很威猛:这种不可怕,最可怕的是夹在一帮名校里的二本选手,人家才是最稳的。
点赞 评论 收藏
分享
jack_miller:杜:你不用我那你就用我的美赞臣
点赞 评论 收藏
分享
昨天 21:57
已编辑
门头沟学院 C++
点赞 评论 收藏
分享
评论
6
收藏
分享
牛客网
牛客企业服务