DZY Love Math 系列

[BOZJ3309] DZY Loves Math

顺着套路就能得到:\(Ans = \sum_{T=1}\lfloor \frac{n}{T} \rfloor \lfloor \frac{m}{T} \rfloor \sum_{d|T} f(d) \mu(\frac{T}{d})\)。
问题变为求\(\sum_{d|T} f(d) \mu(\frac{T}{d})\)。
你可以见这里
你还可以见这里
然而我就是要再写一遍你管我QwQ......
设\(T = \prod_{i=1}^K p_i^{a_i}\),\(d = \prod_{i=1}^Kp_i^{b_i}\),显然有\(a_i\ge b_i\),看到\(\mu\)显然\(|a_i-b_i|\leq 1\)才有意义。
若存在\(a_i>a_j\),则\(b_i\ge b_j\),所以\(b_j\)可以操控符号,即\(f(d) = 0\)。
否则说明\(a_1=a_2...=a_K\),显然只有当\(b_i=a_i-1\)对所有\(i\)都成立时,\(f\)的绝对值大小不一样。
所以\(f(d) = (-1)^{K+1}\),记一下最小质因子和每个数包含的不同质因子数,然后就能线性筛\(f\)了。

[BZOJ3462] DZY Loves Math II

把可用质数\(p\)弄出来,不同的\(p\)不会超过\(7\)个,那么就是求\(\sum_{i=1}^K c_i p_i = n\)的合法\(c_i\)组的个数。
由于\(p_i|S\),所以把方案按照\(c_i\% \frac{S}{p_i}\)后的结果分组,然后背包处理\((S-1)(K+1)\)以内的答案。
每次枚举模后方案的答案\(tS + n\% S\),然后设还需要\(x\)个\(S\),插板分配到\(K\)个质数中即可。

[BZOJ3481] DZY Loves Math III

用扩欧那套理论可得:\(Ans = \sum_{x=1}^{P} gcd(x,P) [gcd(x,P)|Q]\)
枚举\(d = gcd(x,P)\),\(Ans = \sum_{d|P,d|Q} d\varphi(\frac{P}{d})\)。
令\(Q' = gcd(P,Q)\),\(Ans = \sum_{d|P} d[d|Q']\varphi(\frac{P}{d}) = \sum_{d|Q'} d\varphi(\frac{P}{d})\)。
被小胖坑过的童鞋应该都能立刻反应过来这是狄利克雷卷积,只要算每个质因子的答案即可。
枚举一个质因子\(p\),设\(P\)中有\(a\)个,\(Q'\)中有\(b\)个。
若\(a > b\),\(ans(p) = (b + 1)(p-1)p^{a-1}\),若\(a=b\),\(ans(p) = b(p-1)p^{a-1} + p^a\)。
大数分解质因数用一下\(Miller-Rabin\)和\(Pollard-Rho\)就行了。

[BZOJ3512] DZY Loves Math IV

枚举一个\(n\),然后要算\(S(n,m) = \sum_{i=1}^m \varphi(in)\)。
令\(d = gcd(i,n)\)。
顺着套路展开:\(S(n,m) = \sum_{i=1}^m \varphi(i)\varphi(\frac{n}{d})d = \sum_{i=1}^m \varphi(i) \varphi(\frac{n}{d}) \sum_{e|d} \varphi(e)\)。
后面两个玩意合并不了,不过很好解决。
我们设\(n'y = n\),其中\(n'\)为\(n\)的每个质因子各取一个构成的数,\(d' = gcd(i,n')\)。
\(S(n,m) = y\sum_{i=1}^m \varphi(i) \varphi(\frac{n'}{d'})\sum_{e|d'}\varphi(e)\)。
那么此时有\(\frac{n'}{d'} \perp e\),
\(S(n,m) = y\sum_{i=1}^m \varphi(i) \sum_{e|d'}\varphi(\frac{n'}{e}) = y\sum_{i=1}^m \varphi(i) \sum_{e|n',e|i} \varphi(\frac{n'}{e})\)。
\(S(n,m) = y\sum_{e|n'} \varphi(\frac{n'}{e}) \sum_{i=1}^{\lfloor \frac{m}{e} \rfloor} \varphi(ie) = y\sum_{e|n'} \varphi(\frac{n'}{e})S(e,\lfloor \frac{m}{e} \rfloor)\)。
递归做,\(n = 1\)时杜教筛求\(\varphi\)前缀和即可。

[BZOJ3560] DZY Loves Math V

明摆着是叫你算每一个质因子的贡献,然后把它们都乘起来。
考虑欧拉函数\(\varphi(p^t) = (p-1) p^{t-1}\)。
所以每一个质因子的贡献为\((\prod_{i=1}^n (\sum_{j=0}^{c_i} p^j) - 1) (p-1) + 1\),乘起来就行了。

[BZOJ3561] DZY Loves Math VI

顺着套路推(设\(n\leq m\)),可以得到:
\(Ans = \sum_{T=1}^{n} (\sum_{i=1}^{\lfloor \frac{n}{T} \rfloor} i)(\sum_{j=1}^{\lfloor \frac{m}{T} \rfloor} j) \sum_{e|T} (\frac{T}{e})^{\frac{T}{e}} \mu(e) e^{2(\frac{T}{e})}\),暴力算即可。

# DZY Love Math 系列的更多相关文章

  1. DZY Loves Math 系列详细题解

    BZOJ 3309: DZY Loves Math I 题意 \(f(n)\) 为 \(n\) 幂指数的最大值. \[ \sum_{i = 1}^{a} \sum_{j = 1}^{b} f(\gcd ...

  2. DZY Loves Math系列

    link 好久没写数学题了,再这样下去吃枣药丸啊. 找一套应该还比较有意思的数学题来做. [bzoj3309]DZY Loves Math 简单推一下. \[\sum_{i=1}^n\sum_{j=1 ...

  3. [BZOJ] DZY Loves Math 系列 I && II

    为了让自己看起来有点事干 ,做个套题吧..不然老是东翻翻西翻翻也不知道在干嘛... \(\bf 3309: DZY \ Loves \ Math\) 令 \(h=f*\mu\) 很明显题目要求的就是\ ...

  4. BZOJ DZY Loves Math系列

    ⑤(BZOJ 3560) $\Sigma_{i_1|a_1}\Sigma_{i_2|a_2}\Sigma_{i_3|a_3}\Sigma_{i_4|a_4}...\Sigma_{i_n|a_n}\ph ...

  5. [BZOJ3561] DZY Loves Math VI

    (14.10.28改) 本来只想写BZOJ3739:DZY Loves Math VIII的,不过因为和VI有关系,而且也没别人写过VI的题解,那么写下. 不过我还不会插公式…… http://www ...

  6. BZOJ 3309: DZY Loves Math

    3309: DZY Loves Math Time Limit: 20 Sec  Memory Limit: 512 MBSubmit: 761  Solved: 401[Submit][Status ...

  7. 【BZOJ】3309: DZY Loves Math 莫比乌斯反演优化

    3309: DZY Loves Math Description 对于正整数n,定义f(n)为n所含质因子的最大幂指数.例如f(1960)=f(2^3 * 5^1 * 7^2)=3, f(10007) ...

  8. BZOJ 3512: DZY Loves Math IV [杜教筛]

    3512: DZY Loves Math IV 题意:求\(\sum_{i=1}^n \sum_{j=1}^m \varphi(ij)\),\(n \le 10^5, m \le 10^9\) n较小 ...

  9. ●BZOJ 3309 DZY Loves Math

    题链: http://www.lydsy.com/JudgeOnline/problem.php?id=3309 题解: 莫比乌斯反演,线筛 化一化式子: f(x)表示x的质因子分解中的最大幂指数 $ ...

随机推荐

  1. Android——调用高德地图API前期准备

    1.登陆高德开放平台注册账号http://lbs.amap.com/ 2.创建自己的应用并且添加新key 获取发布版安全码获取方法: 在AndroidStudio的Terminal中编译: 输入如下图 ...

  2. 【Go】累加器的测试问题记录

    关于GoLang学习过程中的一个问题mark,教程上说两个累加器的地址应该是不一样的,但是实际测试出来结果一样 package main import( "fmt" ) func ...

  3. 【Unity】 Cursor学习

    CursorLockMode.None 光标行为未修改,第一人称视角下鼠标可以突破窗口. CursorLockMode.Locked 光标锁定到游戏窗口的中心,与全屏与否无关,同时隐藏光标(这一点在3 ...

  4. Influxdb配置文件详解---influxdb.conf

    官方介绍:https://docs.influxdata.com/influxdb/v1.2/administration/config/ 全局配置 1 2 reporting-disabled =  ...

  5. ClassLoader.loadClass()与Class.forName()的区别

    ClassLoader.loadClass()与Class.forName()都是反射用来构造类的方法,但是他们的用法还是有一定区别的. 在讲区别之前,我觉得很有不要把类的加载过程在此整理一下. 在J ...

  6. 工程能力之C4模型

    概述 刚在InfoQ上看到一篇介绍C4Model的文章,觉得这个模型设计的很赞,很有指导意义,做个简单的记录. Why,为什么需要架构图? ThoughtWorks中国 文章中有几句话我觉得很有道理, ...

  7. 微软职位内部推荐-Software Engineer II_VS

    微软近期Open的职位: Job Title: Software Engineer II Division: Visual Studio China – Developer Division Work ...

  8. logout命令详解

    基础命令学习目录首页 logout指令让用户退出系统,其功能和login指令相互对应.语法 logout

  9. linux安装nginx并配置负载均衡

    linux上安装nginx比较简单: 前提是需要有gcc或者g++ 1.yum需要的依赖  yum -y install openssl openssl-devel 2.解压pcre库.zlib库   ...

  10. MySQL原生API、MySQLi面向过程、MySQLi面向对象、PDO操作MySQL

    [转载]http://www.cnblogs.com/52fhy/p/5352304.html 本文将举详细例子向大家展示PHP是如何使用MySQL原生API.MySQLi面向过程.MySQLi面向对 ...