zoukankan      html  css  js  c++  java
  • P6060 [加油武汉]传染病研究

    题意

    (T)组询问,每组给定(n,k),求(sumlimits_{i=1}^n sigma_0(i^k))(Tle 10^4)(n,kle 10^7)

    做法一

    (m)表示成(m=prodlimits_{i=1}^c p_i^{alpha_i}),则(sigma_0(m)=prodlimits_{i=1}^c(alpha_i+1)),则(sigma_0(m^k)=prodlimits_{i=1}^c (kcdot alpha_i+1))
    (sigma(m^k))是个关于(k)(c)次多项式((cle 8)
    可以线性筛出(iin[1,n])的多项式系数,再求前缀和

    做法二

    (w(i))(i)的质因数个数
    (sumlimits_{i=1}^n sigma_0(i^k)=sumlimits_{i=1}^n k^{w(i)}frac{n}{i})

    解释一下:
    (d=prodlimits_{i=1}^c p_i^{alpha_i})
    将每个约数映射为(g(d)=prodlimits_{i=1}^c p_i^{frac{alpha_i}{k}})
    (g(d)|i)等价于(d|i^k),对于给定的(d),可以找到(frac{n}{g(d)})个数字使得(d|i^k)
    (sumlimits_{i=1}^n sigma_0(i^k)=sumlimits_{d=1}^{n^k}frac{n}{g(d)})
    枚举(i=g(d)),显然有(k^{w(i)})(d)满足(g(d)=i)

  • 相关阅读:
    http uri唯一标识
    http协议
    python模块 sys
    file 文件的操作
    库的介绍及使用
    python os模块
    python的序列化与反序列化
    python 字典的定义以及方法
    python字符串的常用方法
    在Windows下使用adb logcat grep
  • 原文地址:https://www.cnblogs.com/Grice/p/12932852.html
Copyright © 2011-2022 走看看