真是一道“简单”的数学题呢~

反演题, 化式子.
\[
ans=\sum_{i=1}^n\sum_{j=1}^nijgcd(i,j) \\ =\sum_{i=1}^n\sum_{j=1}^n\sum_{d=1}^nij[gcd(i,j)=d]\\ =\sum_{d=1}^nd\sum_{i=1}^n\sum_{i=1}^nij[gcd(i,j)=1]\\ =\sum_{d=1}^nd^3\sum_{i=1}^{\left \lfloor \frac nd \right \rfloor}\sum_{j=1}^{\left \lfloor \frac nd \right \rfloor}ij[gcd(i,j)=1] \\ =\sum_{d=1}^nd^3\sum_{i=1}^{\left \lfloor \frac nd \right \rfloor}i\sum_{j=1}^{\left \lfloor \frac nd \right \rfloor}j[gcd(i,j)=1] \\ =\sum_{d=1}^nd^3\sum_{i=1}^{\left \lfloor \frac nd \right \rfloor}i\sum_{j=1}^{\left \lfloor \frac nd \right \rfloor}j\sum_{t|i,j}\mu(t) \\ i=tp,j=tq,\\ =\sum_{d=1}^nd^3\sum_{t=1}^{\left \lfloor \frac nd \right \rfloor}t^2\cdot\mu(t)\sum_{p=1}^{\left \lfloor \frac n{td} \right \rfloor}p\sum_{q=1}^{\left \lfloor \frac n{td} \right \rfloor}q \\ \because \sum_{i=1}^n=\frac {n(n+1)}2\\ \therefore ans=\sum_{d=1}^nd^3\sum_{t=1}^{\left \lfloor \frac nd \right \rfloor}t^2\cdot\mu(t)[\frac{n(n+1)}{2}]
\]
然后我们令\(T=id\), 枚举\(T\),
\[
ans=\sum_{T=1}^n[\frac{\left \lfloor \frac nT \right \rfloor(\left \lfloor \frac nT \right \rfloor+1)}{2}]^2\sum_{d|T}d^3(\frac Td)^2\mu(\frac Td) \\
=\sum_{T=1}^n[\frac{\left \lfloor \frac nT \right \rfloor(\left \lfloor \frac nT \right \rfloor+1)}{2}]^2T^2\sum_{d|T}d\mu(\frac Td) \\
=\sum_{T=1}^n[\frac{\left \lfloor \frac nT \right \rfloor(\left \lfloor \frac nT \right \rfloor+1)}{2}]^2T^2(n*\mu)(T) \\
=\sum_{T=1}^n[\frac{\left \lfloor \frac nT \right \rfloor(\left \lfloor \frac nT \right \rfloor+1)}{2}]^2T^2\varphi(T)
\]
然后我们令\(X=[\frac{\left \lfloor \frac nT \right \rfloor(\left \lfloor \frac nT \right \rfloor+1)}{2}]^2, f(T)=T^2\varphi(T)\), 这样就变成了
\[
ans=\sum_{T=1}^nXf(T)
\]
\(X\)可以分块然后\(O(1)\)算, 那我们只要能求出\(f(T)\)的前缀和就行了.
那\(n<=10^{10}\)要用杜教筛. 我们想一下杜教筛的通式:
\[
s_f(x)=\frac{s_{f*g}(x)-\sum_{i=2}^ns_f(\left \lfloor \frac ni \right \rfloor)g(i)}{g(1)}
\]
其中\(g(x)\)和\((f*g)(x)\)是易求前缀和的函数.
看到这种乘积的前缀和我们又想到了之前做lcm之和的提出乘积中某一项的高端操作, 我们就试着让\(g(x)\)去卷\(n^2\)(就是\(f(x)=x^2\)啦).
然后
\[
g(x)=(n^2\cdot\varphi)(x) \\
(g*n^2)(x)=((n^2\cdot\varphi)*n^2)(x)=(n^2\cdot(\varphi*1))(x)=(n^2\cdot n)(x)=n^3(x)
\]
然后\(n^3(x)\)的前缀和也是有公式的可以\(O(1)\)算, 这样我们就令\(g(x)=n^2(x), (f*g)(x)=n^3(x)\), 然后扔到上面的杜教筛通式里做就好啦~

复杂度可能是\(O(\sqrt n*n^{\frac 23})\)的, 不过这应该是最优的复杂度了..

代码应该不太好写, 懒得写了QAQ

【学术篇】luogu3768 简单的数学题(纯口胡无代码)的更多相关文章

  1. [Luogu3768]简单的数学题

    题面戳我 题意:求 \[\sum_{i=1}^{n}\sum_{j=1}^{n}ij\gcd(i,j)\] \(n\le10^{10}\) sol \[ans=\sum_{d=1}^{n}d\sum_ ...

  2. Luogu3768简单的数学题

    题目描述 题解 我们在一通化简上面的式子之后得到了这么个东西. 前面的可以除法分块做,后面的∑T2∑dµ(T/d)是积性函数,可以线性筛. 然后这个数据范围好像不太支持线性筛,所以考虑杜教筛. 后面那 ...

  3. [luogu3768] 简单的数学题 [杜教筛]

    题面: 传送门 实际上就是求: 思路: 看到gcd就先反演一下,过程大概是这样: 明显的一步反演 这里设,S(x)等于1到x的和 然后把枚举d再枚举T变成先枚举T再枚举其约数d,变形: 后面其中两项展 ...

  4. iOS开发UI篇—Quartz2D简单使用(二)

    iOS开发UI篇—Quartz2D简单使用(二) 一.画文字 代码: // // YYtextview.m // 04-写文字 // // Created by 孔医己 on 14-6-10. // ...

  5. 【Luogu3768】简单的数学题(莫比乌斯反演,杜教筛)

    [Luogu3768]简单的数学题(莫比乌斯反演,杜教筛) 题面 洛谷 \[求\sum_{i=1}^n\sum_{j=1}^nijgcd(i,j)\] $ n<=10^9$ 题解 很明显的把\( ...

  6. iOS开发数据库篇—SQLite简单介绍

    iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中,通常都需要对数据进行离线缓存的处理,如新闻数据的离线缓存等. 说明:离线缓存一般都是把数据保存到项目的沙盒中.有以下几种方式 (1 ...

  7. iOS开发UI篇—Quartz2D简单介绍

    iOS开发UI篇—Quartz2D简单介绍 一.什么是Quartz2D Quartz 2D是⼀个二维绘图引擎,同时支持iOS和Mac系统 Quartz 2D能完成的工作: 绘制图形 : 线条\三角形\ ...

  8. 【转】 iOS开发数据库篇—SQLite简单介绍

    开始学SQLite啦, 原文: http://www.cnblogs.com/wendingding/p/3868893.html iOS开发数据库篇—SQLite简单介绍 一.离线缓存 在项目开发中 ...

  9. iOS开发多线程篇—多线程简单介绍

    iOS开发多线程篇—多线程简单介绍 一.进程和线程 1.什么是进程 进程是指在系统中正在运行的一个应用程序 每个进程之间是独立的,每个进程均运行在其专用且受保护的内存空间内 比如同时打开QQ.Xcod ...

随机推荐

  1. HDU 1261 字串数(排列组合)

    字串数 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...

  2. 【外】001-python3之zip函数

    zip函数语法格式zip(可迭代对象1, 可迭代对象2, ... ,可迭代对象n) 函数接收任意个可迭代对象作为参数, 将所有对象中对应位置上的元素分别打包在一起组成一个tuple, 并将所有的tup ...

  3. SpringData 完全入门指南

    SpringData 笔记 1. 配置项目 1.pom.xml <?xml version="1.0" encoding="UTF-8"?> < ...

  4. mid

    """ Cross Site Request Forgery Middleware. This module provides a middleware that imp ...

  5. css页面网址

    前端必看的文章 1.CSS设置居中的方案总结  https://juejin.im/post/5a7a9a545188257a892998ef 2.阮一峰老师的网站 http://www.ruanyi ...

  6. 笔记62 Spring Boot快速入门(二)

    SpringBoot部署 一.jar方式 1.首先安装maven. <1>下载最新的maven版本:https://maven.apache.org/download.cgi <2& ...

  7. web.xml中配置——解决post乱码

    <!-- 解决post乱码 --> <filter> <filter-name>CharacterEncodingFilter</filter-name> ...

  8. Yii2查询语句

    Yii2常用的查询: Yii2原生查询: $request = Yii::$app->request; $shopid = $request->post('shopid'); $gps = ...

  9. thinkphp rpc

    RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议.RPC协议假定某些传输协议的存在 ...

  10. 「CTS2019 | CTSC2019」氪金手游 解题报告

    「CTS2019 | CTSC2019」氪金手游 降 智 好 题 ... 考场上签到失败了,没想容斥就只打了20分暴力... 考虑一个事情,你抽中一个度为0的点,相当于把这个点删掉了(当然你也只能抽中 ...