• Codeforces225E


    Portal

    Description

    求所有对于方程$$z=left lfloor frac{x}{2} ight floor+y+xy$$不存在正整数((x,y))(z)中,第(n)小的(z)。答案对(10^9+7)取模。

    Solution

    (left lfloor dfrac{x}{2} ight floor)看起来很烦,来把它去掉。
    (x)为奇数时,原方程可化为(2z+2= (2y+1)(x+1)),其中(2y+1)是奇数,(x+1)是偶数。也就是说,(z)有解(Leftrightarrow 2z+2)可以表示为奇数(非(1))与偶数的积。那么(2z+2)就不能含有任何的奇数质因子,只能是(2)的若干次幂,这是(z)无解的必要条件。
    (x)为偶数时,原方程可化为(2z+1= (2y+1)(x+1)),其中(2y+1)是奇数,(x+1)是奇数。也就是说,(z)有解(Leftrightarrow 2z+1)可以表示为奇数(非(1))与奇数(非(1))的积。那么(2z+1)作为一个奇数却不能表示成两个奇数的积,那么它只能是一个奇质数。这是(z)无解的另一个必要条件。
    总结一下,(z)无解(Leftrightarrow 2z+2=2^k, 2z+1)为质数(Leftrightarrow 2z+1=2^k-1)且为质数
    形如(2^k-1)的素数称为梅森素数(Mersenne prime),目前仅发现50个梅森素数,最大的是(2^{77232917}-1),有(23249425)位数。百度一下即可(摔!!!!!题解就是叫你上网查!!!!!)

    Prime numbers like (2^{a-1}) are Mersenne primes. Only about 46 such numbers are found now. Powers of 2 for the firts 40 numbers you can find for example here.

    Code

    //Unsolvable
    #include <cstdio>
    typedef long long lint;
    lint const H=1e9+7;
    int p[50]={0,2,3,5,7,13,17,19,31,61,89,107,127,521,607,1279,2203,2281,3217,4253,4423,9689,9941,11213,19937,21701,23209,44497,86243,110503,132049,216091,756839,859433,1257787,1398269,2976221,3021377,6972593,13466917,20996011,24036583,25964951,30402457,32582657,37156667};
    int m[50]={0,1,3,15,63,4095,65535,262143,73741816,536396503,140130950,487761805,319908070,106681874,373391776,317758023,191994803,416292236,110940209,599412198,383601260,910358878,532737550,348927936,923450985,470083777,642578561,428308066,485739298,419990027,287292016,202484167,389339971,848994100,273206869,853092282,411696552,876153853,90046024,828945523,697988359,761934284,490117835,345345628,545328622,969088513};
    int main()
    {
        int n; scanf("%d",&n);
        printf("%d
    ",m[n]);
        return 0;
    }
    

    P.S.

    自己上网查是什么鬼啊!!!!!

  • 相关阅读:
    Ubuntu 安装 JDK 7 / JDK8 的两种方式
    python 深拷贝 浅拷贝 赋值
    importlib.import_module
    pandas分块读取大量数据集
    win10下安装XGBoost Gpu版本
    win10下安装LGBM GPU版本
    统计自然语言处理(第二版)笔记1
    K-近邻算法
    2019考研的一些心得
    lib和dll的区别与使用
  • 原文地址:https://www.cnblogs.com/VisJiao/p/Cf225E.html
Copyright © 2020-2023  润新知