zoukankan      html  css  js  c++  java
  • Cantor表

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

    1/11/1 , 1/21/2 , 1/31/3 , 1/41/4, 1/51/5, …

    2/12/1, 2/22/2 , 2/32/3, 2/42/4, …

    3/13/1 , 3/23/2, 3/33/3, …

    4/14/1, 4/24/2, …

    5/15/1, …

    … 我们以ZZ字形给上表的每一项编号。第一项是1/11/1,然后是1/21/2,2/12/1,3/13/1,2/22/2,…

    输入格式

    整数NN(1≤N≤100000001N10000000)

    输出格式

    表中的第NN项

    输入输出样例

    输入 #1
    7
    
    输出 #1
    1/4
     1 #include<iostream>
     2 using namespace std;
     3 int main(){
     4     int n,a=1;
     5     cin>>n;
     6     for(int i=1;i<=n;i++){
     7         if(n>a) n-=a;
     8         else break;
     9         a++;
    10     }
    11     a++;
    12     if(a%2==1) cout<<n<<"/"<<a-n;
    13     else cout<<a-n<<"/"<<n;
    14     return 0;
    15 }

    非常水的一道题,

    按照等差数列1,2,3,4,5.....

    找到在哪一斜列(a),

    第a斜列就有a个数,

    并且分子分母之和为a+1;

    然后用剩余的n求,

    如果a为偶数,

    就是从分母为1开始,

    所以分母为n,

    分子就是a+1-n;(因为我前面a++了,所以写的a-n)

    为基数反之。

    昨天忘写博客了啊!!!

    啊啊啊啊啊啊啊啊啊啊啊啊!!!

    QAQ

  • 相关阅读:
    ACM学习历程——POJ 1700 Crossing River(贪心)
    ACM学习历程——POJ 2376 Cleaning Shifts(贪心)
    ACM学习历程——HDU1331 Function Run Fun(锻炼多维dp的打表)
    hadoop-mapreduce-架构概念
    Java-笔记12
    Java-笔记11-复习
    机器学习概述
    hadoop-hdfs-API
    hadoop-
    Java-Project-02
  • 原文地址:https://www.cnblogs.com/sxy2004/p/12266188.html
Copyright © 2011-2022 走看看