zoukankan      html  css  js  c++  java
  • 数论的一些小结论

    1.有两个数p,q,且gcd(q,p)=1,则最大无法表示成px+qy(x>=0,y>=0)的数是pq-q-p(对于n>pq-q-p,都可以表示成px+qy;而pq-q-p,就无法表示成px+qy)。

    2.皮克定理说明了顶点是整点的多边形面积S和内部格点数目a、边上格点数目b的关系:S = a + b/2 - 1。

    3.一条直线((0,0),(n,m))上的格点数等于n与m的最大公约数+1。

    证明:

    记n,m最大公约数k,m=ak,n=bk,那么(a,b)=1
    考察(0,0)到(m,n)直线上一个格点(x,y)(x>0,y>0),有:
    x/y=m/n=a/b
    即bx-ay=0
    因gcd(a,b)=1,必有b|y,a|x,再由x≤m,y≤n,知这样的x,y有k个
    加上(0,0)点,所有的格点数=k+1,得证

    4.N! 中 质因子r的个数 为 N/ r + N/(r2) +N/(r3) + N/(r4)+......  

    简单证明:

    考虑1~N中所有r的倍数都会有一个质因子r,那么加上N/ r

    所有r2 的倍数都有有2个质因子r,但是其中的一个已经在前面算过了,所以只要加上 N/(r2).

    r3r4......也是一样的道理。

    特别的质因子2的个数为N-N的二进制数中1的个数。(可以不断减去lowbit 来得到1的个数)

    简单证明:对于二进制数为(100000)2的N,那么利用上面的式子可以得到2的个数为(11111)2 比N少了1

    对于二进制数为(100100)2的N.可以拆成(100000)2+(100)2 两个数都会减少1..

     所以在(1000....000)2的基础上每把一个0变成1都会使结果减少1.    所以质因子2的个数为N-N的二进制数中1的个数证毕。

  • 相关阅读:
    616无趣
    安装elasticsearch的问题
    导出PDF数据
    生活本苦,奈何年华
    分享一个sql查询重复记录
    springboot的java打印票据-4
    springboot的java打印票据-3
    springboot的java打印票据-2
    react 学习笔记
    原生可拖动表格
  • 原文地址:https://www.cnblogs.com/vb4896/p/3968994.html
Copyright © 2011-2022 走看看