zoukankan      html  css  js  c++  java
  • 2020 CCPC Wannafly Winter Camp

    Day 2

    上午听dls讲数据结构,下午现学现用搞会了一个启发式合并。晚上就被上帝整去了div1。

    题解:考虑每个元音字母的贡献,然后统计。


    Day3

    就做了一个换根DP,还不是正解。又死在筛法上,学了这么多都不知道什么时候可以不落后其他银牌队伍这种题。

    Problem D. 求和

    题意:令 (f(n) = sumlimits^n_{i=1}sumlimits^n_{j=1} gcd(i,j,n)) ,求 $F(n) = sumlimits^n_{i=1} f(i) $

    请输出答案对 (mod) 取模的值。保证 (mod) 是个质数。 ((1 leq n leq 10^9, mod leq 10^9 + 9))

    题解:

    [f(n) = sumlimits^n_{i=1}sumlimits^n_{j=1} gcd(i,j,n) ]

    枚举 (g)

    [f(n) = sumlimits^n_{g=1} g sumlimits^n_{i=1}sumlimits^n_{j=1} [gcd(i,j,n)==g] ]

    显然, (g)(n) 的倍数, (i)(j) 都是 (g) 的倍数,那么一起除掉 (g)

    [f(n) = sumlimits_{g|n} g sumlimits^{frac{n}{g}}_{i=1} sumlimits^{frac{n}{g}}_{j=1} [gcd(i,j,frac{n}{g})==1] ]

    莫比乌斯反演:

    [f(n) = sumlimits_{g|n} g sumlimits^{frac{n}{g}}_{i=1} sumlimits^{frac{n}{g}}_{j=1} sumlimits_{k|gcd(i,j,frac{n}{g})} mu(k) ]

    枚举 (k)

    [f(n) = sumlimits_{g|n} g sumlimits_{k|frac{n}{g}} mu(k) (frac{n}{kg})^2 ]

    (T=kg) , 枚举 (T)

    [f(n) = sumlimits_{T|n} (frac{n}{T})^2 sumlimits_{g|T} g mu(frac{T}{g}) ]

    狄利克雷卷积:

    [f(n) = sumlimits_{T|n} (frac{n}{T})^2 varphi(T) ]

    故:

    [F(n) = sumlimits^n_{i=1} f(i) = sumlimits^n_{i=1} sumlimits_{T|i} T^2 varphi(frac{n}{T}) ]

    交换求和顺序:

    [F(n) = sumlimits^n_{T=1} T^2 sumlimits^{lfloorfrac{n}{T} floor}_{i=1} varphi(i) ]

    后面的欧拉函数前缀和可以用杜教筛求出来,前面可以分块。

  • 相关阅读:
    一行代码搞定Dubbo接口调用
    测试周期内测试进度报告规范
    jq 一个强悍的json格式化查看工具
    浅析Docker容器的应用场景
    HDU 4432 Sum of divisors (水题,进制转换)
    HDU 4431 Mahjong (DFS,暴力枚举,剪枝)
    CodeForces 589B Layer Cake (暴力)
    CodeForces 589J Cleaner Robot (DFS,或BFS)
    CodeForces 589I Lottery (暴力,水题)
    CodeForces 589D Boulevard (数学,相遇)
  • 原文地址:https://www.cnblogs.com/KisekiPurin2019/p/12189785.html
Copyright © 2011-2022 走看看