这道反演题,真牛逼。

  以下用$B$代表伯努利数,$l*g=f$代表狄利克雷卷积,先推式子。

  对于给出的$n,x,y$求一百组数据的$ans$

$\begin{array}{rcl} ans & = & \sum\limits_{i=1}^ngcd(i,n)^xlcm(i,n)^y\end{array}$

$\begin{array}{rcl} & = & \sum\limits_{i=1}^ngcd(i,n)^x\frac{(in)^y}{gcd(i,n)^y}\end{array}$

$\begin{array}{rcl} & = & \sum\limits_{i=1}^ngcd(i,n)^{x-y}(in)^y\end{array}$

$\begin{array}{rcl} & = & n^y\sum\limits_{i=1}^ni^ygcd(i,n)^{x-y}\end{array}$

$\begin{array}{rcl} & = & n^y\sum\limits_{d|n}d^{x-y} \sum \limits_{i=1}^{\lfloor \frac{n}{d} \rfloor} (id)^y[gcd(i,\lfloor\frac{n}{d} \rfloor)=1]\end{array}$

$\begin{array}{rcl} & = & n^y\sum\limits_{d|n}d^x\sum\limits_{i=1}^{\lfloor \frac{n}{d} \rfloor}i^y\sum\limits_{t|gcd(i,\lfloor \frac{n}{d} \rfloor)}\mu(t)\end{array}$

$\begin{array}{rcl} & = & n^y\sum\limits_{d|n}d^x\sum\limits_{t|\lfloor\frac{n}{d}\rfloor}\mu(t)t^y\sum\limits_{i=1}^{\lfloor\frac{n}{td}\rfloor}i^y\end{array}$

$\begin{array}{rcl}\sum\limits_{i=0}^{\lfloor\frac{n}{td}\rfloor}i^y & = & \frac{1}{y+1}\sum\limits_{i=0}^yC_{y+1}^iB_i(\lfloor\frac{n}{td}\rfloor)^{y-i+1}\end{array}$

$\begin{array}{rcl}R_i & = & \frac{C_{y+1}^iB_i}{y+1}\end{array}$

$\begin{array}{rcl}ans & = & n^y\sum\limits_{d|n}d^x\sum\limits_{t|\lfloor\frac{n}{d}\rfloor}\mu(t)t^y\sum\limits_{i=0}^yR_i(\lfloor\frac{n}{td}\rfloor)^{y-i+1}\end{array}$

$\begin{array}{rcl} & = & \sum\limits_{i=1}^yR_in^y\sum\limits_{d|n}d^x\sum\limits_{t|\lfloor\frac{n}{d}\rfloor}\mu(t)t^y(\lfloor\frac{n}{td}\rfloor)^{y-i+1}\end{array}$

$\begin{array}{rcl}f_{i,x,y}(n) & = & n^y\sum\limits_{d|n}d^x\sum\limits_{t|\lfloor\frac{n}{d}\rfloor}\mu(t)t^y(\lfloor\frac{n}{td}\rfloor)^{y-i+1}\end{array}$

分析$f_{i,x,y}(n)$。

$\begin{array}{rcl}l(x) & = & \mu(x)x^y \end{array}$

$\begin{array}{rcl}q_r(x) & = & x^r\end{array}$

$l,q$ 均为积性函数。

$\begin{array}{rcl} g(n) & = & \sum\limits_{d|n}\mu(d)d^yq(\lfloor\frac{n}{d}\rfloor)\end{array}$

$\begin{array}{rcl}g(n) & = & l(n)*q(n)\end{array}$

也为积性函数。

$\begin{array}{rcl}f(n) & = & \sum\limits_{d|n}q(d)g(\lfloor\frac{n}{d}\rfloor) \\ & = & q(n)*g(n) \end{array}$

所以$f_{i,x,y}(n)$是积性函数。

$\begin{array}{rcl}ans & = & \sum\limits_{i=0}^yR_if_{i,x,y}(n)\end{array}$

$n$为$1e18$考虑用$O(n^{1/4})$的$Pollard_Rho$算法对$n$进行质因分解。

$n=\_p^c$

$\begin{array}{rcl}f_{i,x,y}(p^c) & = & p^{cy}\sum\limits_{d|p^c}\sum\limits_{t|\lfloor\frac{p^c}{d}\rfloor}\mu(t)t^y(\lfloor\frac{p^c}{td}\rfloor)^{y-i+1}\end{array}$

$\begin{array}{rcl} & = & p^{cy}\sum\limits_{j=0}^cp^{jx}\sum\limits_{k=0}^{c-j}\mu(p^k)p^{ky}(p^{c-j-k})^{y-i+1}\end{array}$

当k=1或者0的时候,莫比乌斯函数不为0。

$\begin{array}{rcl} & = & p^{cy}\sum\limits_{j=0}^c p^{jx}[(p^{c-j})^{y-i+1}-p^y(p^{c-j-1})^{y-i+1}]\end{array}$

问题得到解决。

知识点:

莫比乌斯反演

狄利克雷卷积

积性函数

自然数幂和

伯努利数

$Miller\_Rabin$素数测试

$Pollard\_Rho$质因数分解

费马小定理

二次初探原理

生日悖论

有兴趣的可以尝试一下,是道好题。

「刷题」JZPKIL的更多相关文章

  1. 「刷题」THUPC泛做

    刷了一下,写一下. T1. 天天爱射击 可以这样想. 我们二分一下每一块木板在什么时刻被击碎. 然后直接用主席树维护的话是\(O(nlog^2n)\)的. 会\(T\),而且是一分不给那种... 那么 ...

  2. 「刷题」Triple

    正解是普通型母函数+FFT. 才学了多项式,做了一道比较好的题了. 首先有三个斧子被偷了. 我们考虑构造一种普通型母函数. 就是说一种多项式吧,我的理解. 系数是方案,下标,也就是所谓的元指数代表的是 ...

  3. 「刷题」xor

    说实话这道题没有A掉,不过所有的思路都是我自己想的,我觉得这个思路真的很棒很棒很棒的. 首先这个题的题面描述告诉我这种运算有封闭性,满足结合律和交换率,那么其实这个东西是个群运算了,而且这个群有单位元 ...

  4. 「刷题」GERALD07加强版

    是LCT了. 首先我们不知道联通块怎么数. 然后颓标签知道了是LCT. 那么考虑一下怎么LCT搞. 有一个很普遍的思路大家也应该都知道,就是如何求一个区间中某种颜色的个数. 这个可以很简单的用主席树来 ...

  5. 「刷题」可怜与STS

    又是一道假期望,我们发现一共有$ C_{2n}^m $种情况. 而$ \frac{(2n)!}{m!(2n-m)!}=C_{2n}^m $ 其实结果就是各个情况总伤害. 1.10分算法,爆搜10分. ...

  6. 「刷题」Color 群论

    这道题乍一看挺水的,直接$ Ploya $就可以了,可是再看看数据范围:n<=1e9 那就是有1e9种置换,这不歇比了. 于是考虑式子的优化. 首先证明,转i次的置换的每个循环结大小是 $ gc ...

  7. 「刷题」卡特兰数&prufer序列

    1.网格 转换模型,翻折容斥出解. 2.有趣的数列 抽象一下模型,把奇数项当作横坐标,偶数项当作纵坐标,就是从n*n矩阵左下角走到右上角并且每一步x<=y的方案数,发现是卡特兰数,关于gcd,可 ...

  8. 「刷题笔记」AC自动机

    自动AC机 Keywords Research 板子题,同luoguP3808,不过是多测. 然后多测不清空,\(MLE\)两行泪. 板子放一下 #include<bits/stdc++.h&g ...

  9. 「刷题笔记」DP优化-状压-EX

    棋盘 需要注意的几点: 题面编号都是从0开始的,所以第1行实际指的是中间那行 对\(2^{32}\)取模,其实就是\(unsigned\ int\),直接自然溢出啥事没有 棋子攻击范围不会旋转 首先, ...

随机推荐

  1. .Net Core上传文件到服务器

    /// <summary> /// 上传文件 /// </summary> /// <returns></returns> [HttpPost(&quo ...

  2. 使用低版本的VS打开高版本项目的解决方案(以VS2008打开VS2010开发的项目为例)

    使用低版本的VS打开高版本项目的解决方案,这里以VS2008打开VS2010开发的项目为例. 右键项目的sln文件以记事本的方式打开: 将对应的前两列版本各降到对应的版本,这边的11.00改为10.0 ...

  3. 学以致用,通过字节码理解:Java的内部类与外部类之私有域访问

    目录: 内部类的定义及用处 打开字节码理解内部类 一.内部类的定义及用处 内部类(inner class)是定义在另一个类中的类.使用内部类,我们可以: 访问该类定义所在的作用域中的数据,包括私有的数 ...

  4. maven更新慢,改用国内镜像地址

    方法很简单: 在 maven根目录 > conf > settings.xml 中 <mirrors>里添加以下子节点: <mirror> <id>al ...

  5. Jenkins部署(基于windows)

    一.安装jdk,配置环境变量 二.安装tomcat和jenkins 1.检查电脑上8080端口是否被占用: 命令行中输入:netstat -ano 2.下载Tomcat Tomcat官方网站:http ...

  6. 白话系列之实现自己简单的mvc式webapi框架

    前言:此文为极简mvc式的api框架,只当做入门api的解析方式,并且这里也不算是mvc框架,因为没有view层,毕竟现在大部分都属于前后端分离,当然也可以提供view层,因为只是将view当做文本返 ...

  7. 【Java 基础】谈谈集合.List

    目录 1. ArrayList 1.1 ArrayList的构造 1.2 add方法 1.3 remove方法 1.4 查询方法 1.5 一些其他常用方法 1.6 ArrayList小结 2. Vec ...

  8. CentOS 7.6 Telnet服务搭建(Openssh升级之战 第一任务备用运输线搭建)

    (以下内容亲手完成,如果需要搬走记得把写博的小白的名字和邮箱一起搬走) 出来玩(学习),总是要还的! 有不明的问题的时候,都来博客园转转,总能找到答案或者灵感,开博3个月都没发一篇帖(不晓得管理员有何 ...

  9. 程序猿的产品思考:2C与2B产品思维的区别

    原创/朱季谦   我最早接触到互联网产品的时候,听到最多的,是做产品要有用户思维,即站在用户角度去看待产品.这个先入为主的概念,在很长一段时间里,都被我效作经典.然而也在很长一段时间里,我竟混淆了其中 ...

  10. selenium驱动chrome浏览器问题

    selenium是一个浏览器自动化测试框架,以下介绍其如何驱动chrome浏览器? 1.下载与本地chrome版本对应的chromedriver.exe ,下载地址为http://npm.taobao ...