暑假集训8-16

昨天考了一场数论,今天还考了一道数论,学了一些知识

昨天T1用类似筛法的思想,不断用已知的良好数产生新数并除去不良好数

一个不是良好的数(设x),再乘一个它没有的质因子变为px,那么在它前面的K个比它约数多的数再乘x依然比它小、约数比它多

得出不良好数乘新质数仍是不良好数,反之不然,所以给良好数乘了新质数还要进行筛除

一个坑点:乘以p的k次幂时怕爆long long,但不能用log函数,可能是因为log函数的使用加大了常数

今天T2死的很惨,我没读对题意

我想象的模型:一个盘子上密布高低不平的石柱,给每个石柱上平均撒下高度为1的沙子,让沙子向低处流,直到平静

正解模型:一个木桶周围木板参差不齐,一个水龙头源源不断向木桶流水,最终水位平静

于是这题成了求路径上地势最大值的最小值,跑bfs

看了T3,顺便学了莫比乌斯函数及其线筛,并没有看懂反演的证明

如果这样考虑的话就是用不太完好的贡献得到答案

这题叫gcd,但并不能只想欧几里得的gcd,

两数唯一分解后,他们"重叠"的部分就是gcd

也就是说,含有相同因子p(或其倍数)的两个数,gcd一定含有p(倍)

根据这个容易得到 gcd为x倍 的数量(设g[x]),而这一数量是gcd为x、2x...kx和起来的

也就是已知g[x]是其倍数d的f[d]之和(f[x]是gcd仅为x的数量),这就用到了莫比乌斯反演

坑点:只能开局部long long,否则超时

 

posted @ 2019-08-17 06:33  DuanYue  阅读(97)  评论(0编辑  收藏  举报