zoukankan      html  css  js  c++  java
  • f(n) hdu 2582

    calculate the f(n) . (3<=n<=1000000)

    f(n)= Gcd(3)+Gcd(4)+…+Gcd(i)+…+Gcd(n).
    Gcd(n)=gcd(C[n][1],C[n][2],……,C[n][n-1])
    C[n][k] means the number of way to choose k things from n some things.

     

    网络上有这个题的题解,但是都是说打表找规律,没有给出规律的证明。昨天睡前yy了一下,给个证明:

     

    首先规律是:

    1.Gcd(n)=1  如果n至少有2个不同的质因子;

    2.Gcd(n)=p  如果$n=p^k$

     

    先来证明第2条:

    $Gcd(p^k)=p$

    首先$C[n][1]=n=p^k$

    那么最大公约数只能是$p^r (r<=k)$ 

    考虑第i个组合数$C[n][i]=frac{p^k*(p^k-1)*(p^k-2)cdots*(p^k-i+1)}{i!}$

    $p^r | (p^k-i) $等价于$p^r | i $

    所以$frac{p^k*(p^k-1)*(p^k-2)cdots*(p^k-i+1)}{i!}$ 里面因子p的个数和$frac{p^k*1*2*3cdots*(i-1)}{i!}$是一样的。

    $frac{p^k*1*2*3cdots*(i-1)}{i!}$约分一下就变成$frac{p^k}{i}$         $(1<=i<=p^k-1)$

    当$i=p^{k-1}$的时候, $frac{p^k}{i}$ 里面p的个数最少,只有1个,  因此$Gcd(p^k)=p$

     

    根据上面的思想可以证明第1条:

    设 $n=p_1^{alpha_1}p_2^{alpha_2}cdots p_k^{alpha_k}$

    考虑任意一个质因子$p_j$ 

    第i个组合数$C[n][i]=frac{n*(n-1)*(n-2)cdots*(n-i+1)}{i!}$

    根据上面的推导 $p_j$在第i个组合数出现的次数为$frac{n}{i}$ 中$p_j$出现的次数。

    当$i=frac{n}{p_s} (s eq j)$的时候,$frac{n}{i}$ 中$p_j$出现的次数为0.

    因此不论考虑哪一个质因子,总有某个组合数不是它的倍数,所以$Gcd(p_1^{alpha_1}p_2^{alpha_2}cdots p_k^{alpha_k})=1$

  • 相关阅读:
    layui的table中日期格式转换
    动态数据网站
    卷积的微分以及积分性质
    傅里叶变换时域积分性质
    矩阵导数的一些笔记
    3层模式下长时间调用的进度条提示方案
    有限区域内的孤立点(极点,有限阶0点)数量有限。
    关于复变函数积分--原函数法
    android 获取文本框回车输入
    企业网络搭建
  • 原文地址:https://www.cnblogs.com/vb4896/p/6100837.html
Copyright © 2011-2022 走看看