题意

$$\sum_{i = 1}^n \mu(i^2)$$

$$\sum_{i = 1}^n \phi(i^2)$$

$n \leqslant 10^9$

Sol

zz的我看第一问看了10min。

感觉自己智商被侮辱了qwq

基础太垃圾qwq。

算了正经点吧,第一问答案肯定是$1$,还不明白的重学反演吧。

第二问其实也不难

定理:

$\phi(i^2) = i\phi(i)$

$\sum_{d | n} \phi(d) = n$

显然$i$

考虑杜教筛的套路式子

$$g(1)s(n) = \sum_{i = 1}^n g(i)s(\frac{n}{i}) - \sum_{i = 2}^n g(i)s(\frac{n}{i})$$

当我们选择$g(i) = id(i) = i$时卷积的前缀和是比较好算的

$(g * s)(i) = \sum_{i = 1}^n i^2 = \frac{n * (n + 1) * (2n + 1)}{6}$

然后上杜教筛就行了

$$s(n) = \frac{n * (n + 1) * (2n + 1)}{6} - \sum_{i = 2}^n i \phi(\frac{n}{i})$$

人傻自带大常数

#include<cstdio>
#include<map>
#define LL long long
using namespace std;
const int MAXN = 1e7 + , mod = 1e9 + ;
const LL inv = ;
int N, prime[MAXN], vis[MAXN], tot;
LL phi[MAXN];
map<int, LL> ans;
void GetPhi(int N) {
vis[] = phi[] = ;
for(int i = ; i <= N; i++) {
if(!vis[i]) prime[++tot] = i, phi[i] = i - ;
for(int j = ; j <= tot && i * prime[j] <= N; j++) {
vis[i * prime[j]] = ;
if(!(i % prime[j])) {phi[i * prime[j]] = phi[i] * prime[j]; break;}
phi[i * prime[j]] = phi[i] * phi[prime[j]];
}
}
for(int i = ; i <= N; i++) phi[i] = (1ll * i * phi[i] % mod + phi[i - ] % mod) % mod;
}
LL Query(LL x) {
return (x * (x + ) / ) % mod;
}
LL S(LL N) {
if(ans[N]) return ans[N];
if(N <= 1e7) return phi[N];
LL sum = N * (N + ) % mod * ( * N + ) % mod * inv % mod, last = ;
for(int i = ; i <= N; i = last + ) {
last = N / (N / i);
sum -= S(N / i) % mod * (Query(last) - Query(i - )) % mod;
sum = (sum + mod) % mod;
}
return ans[N] = (sum % mod + mod) % mod;
}
int main() {
GetPhi(1e7);
scanf("%d", &N);
printf("1\n%lld", S(N));
return ;
}

BZOJ4916: 神犇和蒟蒻(杜教筛)的更多相关文章

  1. [BZOJ4916]神犇和蒟蒻 杜教筛/Min_25筛

    题目大意: 给定\(n\le 10^9\),求: 1.\(\sum_{i=1}^n\mu(i^2)\) 2.\(\sum_{i=1}^n\varphi(i^2)\) 解释 1.\(\sum_{i=1} ...

  2. 【BZOJ4916】神犇和蒟蒻 杜教筛

    题目传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=4916 第一个询问即求出$\sum_{i=1}^{n} { \mu (i^2)} $,考虑 ...

  3. LG4213 【模板】杜教筛(Sum)和 BZOJ4916 神犇和蒟蒻

    P4213 [模板]杜教筛(Sum) 题目描述 给定一个正整数$N(N\le2^{31}-1)$ 求 $$ans_1=\sum_{i=1}^n\varphi(i)$$ $$ans_2=\sum_{i= ...

  4. BZOJ4916: 神犇和蒟蒻【杜教筛】

    Description 很久很久以前,有一只神犇叫yzy; 很久很久之后,有一只蒟蒻叫lty; Input 请你读入一个整数N;1<=N<=1E9,A.B模1E9+7; Output 请你 ...

  5. BZOJ4916 神犇和蒟蒻 【欧拉函数 + 杜教筛】

    题目 很久很久以前,有一只神犇叫yzy; 很久很久之后,有一只蒟蒻叫lty; 输入格式 请你读入一个整数N;1<=N<=1E9,A.B模1E9+7; 输出格式 请你输出一个整数A=\sum ...

  6. BZOJ4916 神犇和蒟蒻(欧拉函数+杜教筛)

    第一问是来搞笑的.由欧拉函数的计算公式容易发现φ(i2)=iφ(i).那么可以发现φ(n2)*id(n)(此处为卷积)=Σd*φ(d)*(n/d)=nΣφ(d)=n2 .这样就有了杜教筛所要求的容易算 ...

  7. Bzoj4916: 神犇和蒟蒻

    题面 传送门 Sol 第一问puts("1") 第二问,\(\varphi(i^2)=i\varphi(i)\) 设\(\phi(n)=\sum_{i=1}^{n}i\varphi ...

  8. 【BZOJ4916】神犇和蒟蒻(杜教筛)

    [BZOJ4916]神犇和蒟蒻(杜教筛) 题面 BZOJ 求 \[\sum_{i=1}^n\mu(i^2)\ \ 和\ \sum_{i=1}^n\phi(i^2)\] 其中\[n<=10^9\] ...

  9. 【BZOJ4916】神犇和蒟蒻 解题报告

    [BZOJ4916]神犇和蒟蒻 Description 很久很久以前,有一群神犇叫sk和ypl和ssr和hjh和hgr和gjs和yay和xj和zwl和dcx和lyy和dtz和hy和xfz和myh和yw ...

随机推荐

  1. LabVIEW(八):程序结构中的循环结构

    1.程序结构分为三种:循环结构.分支结构.顺序结构. 本文主要讨论循环结构. 2.While循环 左下角:循环计数端子i,从0开始计数,每进行一次循环,i自动增加1. 右下角:循环条件端子,当循环达到 ...

  2. 二、activiti工作流-创建25张表

    首先我们在eclipse上创建一个maven项目 然后在resources下面创建一个file,并命名问activiti.cfg.xml activiti.cfg.xml的配置内容如下 <?xm ...

  3. pycharm安装plugins

    1 . 启动 PyCharm 软件 2 . 打开 设置(Setting) 窗口.(操作:File -> Setting 或者 按快捷键 Ctrl + Alt + S) 3 . 在搜索框里面搜索: ...

  4. [原创]IIS提权工具-VBS提权脚本免杀生成器

    [原创]添加系统用户 VBS提权脚本随机加密生成器[K.8] 2011-05-05 02:42:53|  分类: 原创工具 VBS提权脚本随机加密生成器[K.8]  Author: QQ吻 QQ:39 ...

  5. 【Hadoop】2、Hadoop高可用集群部署

    1.服务器设置 集群规划 Namenode-Hadoop管理节点 10.25.24.92 10.25.24.93 Datanode-Hadoop数据存储节点 10.25.24.89 10.25.24. ...

  6. Xamarin.Android 解决打开软键盘导致底部菜单上移问题

    在界面布局中有EditText控件,该控件一旦获取焦点则打开软键盘,如果布局中有底部菜单,那么底部菜单可能会被软键盘顶在其上面,看如下效果: 解决方法:在活动绑定界面之前写上下段代码即可 Window ...

  7. Kubernetes 基于 Metrics Server 与 HPA 的使用

    在 Kubernetes 中可以手动通过 kubectl scale 命令或通过修改 replicas 数量,可以实现 Pod 的扩容或缩容.Kubernetes 中还提供了 HPA(Horizont ...

  8. C#版 - LeetCode 148. Sort List 解题报告(归并排序小结)

    leetcode 148. Sort List 提交网址: https://leetcode.com/problems/sort-list/  Total Accepted: 68702 Total ...

  9. HTTP的基本原理

    用户访问万维网文档,万维网文档之间的链接以及万维网文档中数据传送到用户计算机,这些功能的实现都是由超文本传输协议 HTTP(HyperTextTransfer Protocol) 负责完成的. HTT ...

  10. Elasticsearch从入门到精通-Elasticsearch是什么

    作者其他ELK快速入门系列文章 logstash快速入门实战指南 Kibana从入门到精通 一.前言 驱动未来商业发展的最重要“能源”不是石油,而是数据.我们还来不及了解它,这个世界已经被它淹没.多年 ...