题目描述

输入

一个正整数T表示数据组数

接下来T行 每行两个正整数 表示N、M

输出

T行 每行一个整数 表示第i组数据的结果

样例输入

1
4 5

样例输出

122


题解

莫比乌斯反演+线性筛

由于要处理多组询问,所以 bzoj2154 的做法就不好用了,但是这个结论可以套用过来。

然后推公式:

(UPD:上面公式最后一行请自行把 $k$ 改成 $n$ ... 由于这里是图片形式就不改了)

设f1(n)=n2mu(n),f2(n)=n,则显然f2是积性函数,f1为两个积性函数的乘积,也是积性函数。

那么f为f1和f2的狄利克雷卷积,也是积性函数。

所以可以尝试快筛f(n)。

当n为质数时,显然f(n)=n-n^2。

当n不为质数时,即n=i*p,p|i,p是质数,那么观察f(n)化简之后的式子,n新增加出来的约数一定是包含p^2的,它的mu值一定是0,所以f(n)的改变只是从i*...变为了n*...,所以此时f(n)=f(i)*p。

这样我们就可以快筛出f函数及其前缀和,然后对于每个询问分块求解即可。

#include <cstdio>
#include <algorithm>
#define mod 100000009
using namespace std;
const int n = 10000000;
typedef long long ll;
int prime[n + 10] , tot;
ll g[n + 10] , sum[n + 10];
bool np[n + 10];
ll s(int x)
{
return (ll)x * (x + 1) / 2 % mod;
}
ll cal(ll a , ll b)
{
int i , last;
ll ans = 0;
for(i = 1 ; i <= a && i <= b ; i = last + 1) last = min(a / (a / i) , b / (b / i)) , ans = (ans + (sum[last] - sum[i - 1] + mod) % mod * s(a / i) % mod * s(b / i) % mod) % mod;
return ans;
}
int main()
{
int i , j , T , a , b;
g[1] = sum[1] = 1;
for(i = 2 ; i <= n ; i ++ )
{
if(!np[i]) g[i] = ((i - (ll)i * i) % mod + mod) % mod , prime[++tot] = i;
for(j = 1 ; j <= tot && i * prime[j] <= n ; j ++ )
{
np[i * prime[j]] = 1;
if(i % prime[j] == 0)
{
g[i * prime[j]] = g[i] * prime[j] % mod;
break;
}
else g[i * prime[j]] = g[i] * g[prime[j]] % mod;
}
sum[i] = (sum[i - 1] + g[i]) % mod;
}
scanf("%d" , &T);
while(T -- ) scanf("%d%d" , &a , &b) , printf("%lld\n" , cal(a , b));
return 0;
}

【bzoj2693】jzptab 莫比乌斯反演+线性筛的更多相关文章

  1. BZOJ 2693: jzptab [莫比乌斯反演 线性筛]

    2693: jzptab Time Limit: 10 Sec  Memory Limit: 512 MBSubmit: 1194  Solved: 455[Submit][Status][Discu ...

  2. 【bzoj2694】Lcm 莫比乌斯反演+线性筛

    题目描述 求$\sum\limits_{i=1}^n\sum\limits_{j=1}^m|\mu(gcd(i,j))|lcm(i,j)$,即$gcd(i,j)$不存在平方因子的$lcm(i,j)$之 ...

  3. 【bzoj4407】于神之怒加强版 莫比乌斯反演+线性筛

    题目描述 给下N,M,K.求 输入 输入有多组数据,输入数据的第一行两个正整数T,K,代表有T组数据,K的意义如上所示,下面第二行到第T+1行,每行为两个正整数N,M,其意义如上式所示. 输出 如题 ...

  4. 莫比乌斯反演/线性筛/积性函数/杜教筛/min25筛 学习笔记

    最近重新系统地学了下这几个知识点,以前没发现他们的联系,这次总结一下. 莫比乌斯反演入门:https://blog.csdn.net/litble/article/details/72804050 线 ...

  5. 【BZOJ-4407】于神之怒加强版 莫比乌斯反演 + 线性筛

    4407: 于神之怒加强版 Time Limit: 80 Sec  Memory Limit: 512 MBSubmit: 241  Solved: 119[Submit][Status][Discu ...

  6. BZOJ3309 DZY Loves Math(莫比乌斯反演+线性筛)

    一通正常的莫比乌斯反演后,我们只需要求出g(n)=Σf(d)*μ(n/d)的前缀和就好了. 考虑怎么求g(n).当然是打表啊.设n=∏piai,n/d=∏pibi .显然若存在bi>1则这个d没 ...

  7. Luogu 4917 天守阁的地板(莫比乌斯反演+线性筛)

    既然已经学傻了,这个题当然是上反演辣. 对于求积的式子,考虑把[gcd=1]放到指数上.一通套路后可以得到∏D∏d∏i∏j (ijd2)μ(d) (D=1~n,d|D,i,j=1~n/D). 冷静分析 ...

  8. bzoj 2820 YY的GCD - 莫比乌斯反演 - 线性筛

    Description 神犇YY虐完数论后给傻×kAc出了一题给定N, M,求1<=x<=N, 1<=y<=M且gcd(x, y)为质数的(x, y)有多少对kAc这种 傻×必 ...

  9. 【bzoj3309】DZY Loves Math 莫比乌斯反演+线性筛

    Description 对于正整数n,定义f(n)为n所含质因子的最大幂指数.例如f(1960)=f(2^3 * 5^1 * 7^2)=3, f(10007)=1, f(1)=0. 给定正整数a,b, ...

随机推荐

  1. iOS交互h5— JavaScriptCore ---UIWebview

    JavaScriptCore这个框架,从而让web页面和本地原生应用交互起来非常方便,而且使用此框架可以做到Android那边和iOS相对统一, web前端 在三端交互中,web前端开发人员来定义,让 ...

  2. SSM配置JDBC错误: cquisition Attempt Failed!!!

    异常: 警告: com.mchange.v2.resourcepool.BasicResourcePool$AcquireTask@20ffa401 -- Acquisition Attempt Fa ...

  3. CentOS 7 隐藏任务栏和顶栏

    我使用的是Gnome,对于使用惯了windows的我来说,这个界面确实有点丑,但是,也将就着用了,最近发现有一款软件(Cairo-Dock)可以美化桌面,于是就安装了,但是安装之后发现了一个问题:原来 ...

  4. 从项目中学习HTML+CSS

    最近由于工作原因以及自己的懈怠,已经很久都没有更新过博客了.通过这段时间,我发现坚持一件事情是真的很难,都说万事开头难,但是在放弃这件事上好像开头了后面就顺理成章的继续下去了.中间即使不怎么情愿也在努 ...

  5. [移动端WEB] 移动端网站响应式布局之"rem",CSS3 rem使用方式

    (function(doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? ' ...

  6. GitHub已将持续集成服务器Janky开源

    GitHub已将Janky开源,这是他们构建在Jenkins之上的持续集成服务器,并在其中增加了聊天自动化工具Hubot. 除了一般的Jenkins功能之外,Janky还通过Hubot对功能进行了补充 ...

  7. Pwn with File结构体(三)

    前言 本文由 本人 首发于 先知安全技术社区: https://xianzhi.aliyun.com/forum/user/5274 前面介绍了几种 File 结构体的攻击方式,其中包括修改 vtab ...

  8. 三、vue如何配置路由 、获取路由的参数、部分刷新页面、缓存页面

        1.路由配置:所有的启动文件都在最初始的main.js文件里面,这个文件中首先需要引入: 2.路由文件配置说明: 3.如何获取页面url的参数? this.$route.query 4.页面之 ...

  9. MySQL->>innodb_autoinc_lock_mode参数控制auto_increment 插入数据时相关锁的模式

    转自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/15498/viewspace-2141640/ ---------------------------------- ...

  10. asp.net 對象圖解