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. jmeter—操作数据库

    添加JDBC Request,添加需要执行的sql语句 在这个界面需要配置Variabke Name,内容要与上表中的Name值相同:数据库的用户名.密码.URL.驱动这些基本信息要在这里配置:其他选 ...

  2. [环境配置]Ubuntu16.04下编译安装gcc6.3.0

    上一篇的SVS要用gcc6.3编译,否则结果不正确,本来以为gcc很好装,结果发现用apt-get安装gcc6只能安装6.5版本,代码作者奇特的要求只能用gcc6.3,没办法只能用源码装了,期间碰见了 ...

  3. MergeSort 归并排序(java)

    MergeSort 归并排序 排序思想:1,分解待排序的n个元素为两个子列,各为n/2个元素 2,若子列没有排好序,重复1步骤,每个子列继续分解为两个子列,直至被分解的子列个数为1 3,子列元素个数为 ...

  4. RabbitMQ入门:远程过程调用(RPC)

    假如我们想要调用远程的一个方法或函数并等待执行结果,也就是我们通常说的远程过程调用(Remote Procedure Call).怎么办? 今天我们就用RabbitMQ来实现一个简单的RPC系统:客户 ...

  5. 基于zookeeper实现分布式锁(续)

    测试代码: 效果图:

  6. ACM中常见错误提示解析

    Output Limit Exceeded 多数发生在递归遍历的过程中,多输出了一些内容(比如说空格).Output Limit Exceeded还指如果输入某一组数据,你的程序返回的结果是一直输出某 ...

  7. The Art of Multiprocessor Programming读书笔记 (更新至第3章)

    这份笔记是我2013年下半年以来读“The Art of Multiprocessor Programming”这本书的读书笔记.目前有关共享内存并发同步相关的书籍并不多,但是学术文献却不少,跨越的时 ...

  8. 关于如何使用dubbo管理控制台的一些感想

    1.起因 ​因java项目需要准备安装一个dubbo-admin管理后台研究使用,无奈github上并没有看到dubbo-admin的目录着实让人着急.百度引擎上一些文章也不靠谱!真是浪费时间!所以又 ...

  9. 安装hive的web界面

    参考: http://blog.csdn.net/xinghalo/article/details/52433914 报错参考; http://blog.163.com/artsn@126/blog/ ...

  10. C++ 类 复制构造函数 The Copy Constructor

    一.复制构造函数的定义 复制构造函数是一种特殊的构造函数,具有一般构造函数的所有特性.复制构造函数创建一个新的对象,作为另一个对象的拷贝.复制构造函数只含有一个形参,而且其形参为本类对象的引用.复制构 ...