zoukankan      html  css  js  c++  java
  • 【2018.10.15】WZJ笔记(数论)

    1. 证明:对于任意质数$pgt 3$,$p^2-1$能被$24$整除。

    证:平方差公式,$p^2-1 = (p-1)(p+1)$。

    再把$24$分解质因数$2^3*3$。

    三个相邻的自然数中至少有一个数是$3$的倍数,而$p$是质数不可能有因子$3$,所以$p-1,p+1$中必有一个数有因子$3$。

    $p$是质数,所以一定是奇数,那$p-1,p+1$就是偶数,而相邻两个偶数中至少有一个是$4$的倍数,所以两个数至少有一个有$1$个因子$2$,另一个有$2$个因子$2$。

    所以$(p-1)(p+1)$是$2^3*3=24$的倍数,得证。

    2. 把$gcd$卡成$log$级别的。

    使用斐波那契数列,$gcd(fib(n),fib(n-1))=gcd(fib(n-1),fib(n)mod fib(n-1))=gcd(fib(n-1),fib(n-2))$。

    事实上有一个预处理$O(n)$,查询$O(1)$的求gcd做法,WZJ下次课讲。

    3. 对于任意正整数$n$与质数$pmod 4=3$,有$p$不整除$n^2+1$。

    反证法,假设能整除。

    $n^2equiv -1 (mod p)$

    $(n^2)^frac{p-1}{2} equiv (-1)^frac{p-1}{2} (mod p)$

    结合题意可知$frac{p-1}{2}$是奇数。所以$n^{p-1}equiv -1 (mod p)$

    而我们想到费马小定理的$n^{p-1}equiv -1 (mod p)$。

    但为什么可以转化成费马小定理呢?$p$是质数,但$n,p$一定互质么?

    首先$p$是质数,所以一定不是$n$的倍数;其次,如果$n$是$p$的倍数,$n^2+1$一定不是$p$的倍数,就直接证明原题不能整除了(原因:两个相邻的正整数互质)。

    所以$n,p$互质,可以套用费马小定理。

    结合两者可得$1equiv -1 (mod p)$。

    $p$不能是2,所以不存在满足的情况。

    综上,不能整除。

    4. 原题hdu4497。

    由题可知有$gcd(frac{x}{G},frac{y}{G},frac{z}{G})=1$(这三个数两两互素),此时应该满足$lcm(x,y,z)=L/G$,要求$frac{L}{G}$为整数,则若$Lmod G=0$,则一定有解($x,y,z$ 都等于 $frac{L}{G}$即可),反之无解。
    此时将$L/G$作正整数唯一分解,$frac{L}{G}={a_1}^{b_1}*{a_2}^{b_2}*...*{a_n}^{b_n}$。
    对于一个质因子$a$,要满足$gcd(frac{x}{G},frac{y}{G},frac{z}{G})=1$,则至少有一个$k=0$使某个$a^k=1$。
    同时还得满足$lcm(frac{x}{G},frac{y}{G},frac{z}{G})=frac{L}{G}$,则至少有一个$k=b$使某个$b^k=frac{L}{G}$。
    这样就有三种情况$(0,0,b)(b,b,0)(0,1...b-1,b)$,算上不同排列,共有$3+3+6(b-1)=6*b$种。其他的同理。
    由分步乘法计数原理得最终答案为$(6*b_1)*(6*b_2)*........(6*b_n)$。
  • 相关阅读:
    冷门JS技巧
    JavaScript小技巧整理篇(非常全)
    JS实现标签页切换效果
    MySQL主从配置详解
    mysql主从复制(超简单)
    1.4isAlive()方法
    1.3currentThread()方法
    1.2.4注意Sysyem.out.println与i--
    1.2.3实例变量与线程安全
    1.2.2实现Runnable接口
  • 原文地址:https://www.cnblogs.com/scx2015noip-as-php/p/9794045.html
Copyright © 2011-2022 走看看