BZOJ 2693: jzptab 莫比乌斯反演 + 积性函数 +筛法
Description

Input
题解:
#include<bits/stdc++.h>
#define ll long long
#define M 10001000
#define maxn 10200100
#define MOD 100000009
using namespace std;
int cnt, tot;
int vis[maxn],mu[maxn], prime[maxn];
ll h[maxn], sumv[maxn];
void init()
{
int i,j;
h[1]=1;
for(i=2;i<M;++i)
{
if(!vis[i]) prime[++tot]=i, h[i]=(i-(ll)i*i)%MOD;
for(j=1;j<=tot&&prime[j]*i<M;++j)
{
vis[prime[j]*i]=1;
if(i%prime[j]==0)
{
h[prime[j]*i]=(prime[j]*h[i])%MOD;
break;
}
else h[prime[j]*i]=(h[prime[j]]*h[i])%MOD;
}
}
for(i=1;i<M;++i) sumv[i]=(sumv[i-1]+h[i])%MOD;
}
ll SUM(ll x,ll y)
{
x%=MOD, y%=MOD;
ll r1=(x*(x+1)>>1)%MOD;
ll r2=(y*(y+1)>>1)%MOD;
return (r1*r2)%MOD;
}
ll query(ll n,ll m)
{
int i,last,re=0,j;
if(n>m) swap(n,m);
for(i=1;i<=n;i=j+1)
{
j=min(n/(n/i), m/(m/i));
re += SUM(n/i, m/i) * (sumv[j]-sumv[i-1])%MOD;
re%=MOD;
}
return (re+MOD)%MOD;
}
int main()
{
init();
int n,m,T;
scanf("%d",&T);
while(T--)
{
scanf("%d%d",&n,&m);
printf("%lld\n",query(n,m));
}
return 0;
}
BZOJ 2693: jzptab 莫比乌斯反演 + 积性函数 +筛法的更多相关文章
- bzoj 2693: jzptab 线性筛积性函数
2693: jzptab Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 444 Solved: 174[Submit][Status][Discus ...
- BZOJ 2694: Lcm 莫比乌斯反演 + 积性函数 + 线性筛 + 卡常
求 $\sum_{i=1}^{n}\sum_{j=1}^{m}lcm(i,j)\mu(gcd(i,j))^2$ $\Rightarrow \sum_{d=1}^{n}\mu(d)^2\sum_{i ...
- BZOJ 2693: jzptab [莫比乌斯反演 线性筛]
2693: jzptab Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 1194 Solved: 455[Submit][Status][Discu ...
- BZOJ 2693 jzptab ——莫比乌斯反演
同BZOJ 2154 但是需要优化 $ans=\sum_{d<=n}d*\sum_{i<=\lfloor n/d \rfloor} i^2 *\mu(i)* Sum(\lfloor \fr ...
- BZOJ 2693: jzptab( 莫比乌斯反演 )
速度居然#2...目测是因为我没用long long.. 求∑ lcm(i, j) (1 <= i <= n, 1 <= j <= m) 化简之后就只须求f(x) = x∑u( ...
- 【BZOJ】2693: jzptab 莫比乌斯反演
[题意]2154: Crash的数字表格 莫比乌斯反演,多组询问,T<=10000. [算法]数论(莫比乌斯反演) [题解]由上一题, $ans=\sum_{g\leq min(n,m)}g\s ...
- bzoj2693--莫比乌斯反演+积性函数线性筛
推导: 设d=gcd(i,j) 利用莫比乌斯函数的性质 令sum(x,y)=(x*(x+1)/2)*(y*(y+1)/2) 令T=d*t 设f(T)= T可以分块.又由于μ是积性函数,积性函数的约束和 ...
- $BZOJ$2818 $gcd$ 莫比乌斯反演/欧拉函数
正解:莫比乌斯反演/欧拉函数 解题报告: 传送门$QwQ$ 一步非常显然的变形,原式=$\sum_{d=1,d\in prim}^{n}\sum_{i=1}^{n}\sum_{j=1}^{n}[gcd ...
- 【莫比乌斯反演】关于Mobius反演与lcm的一些关系与问题简化(BZOJ 2154 crash的数字表格&&BZOJ 2693 jzptab)
BZOJ 2154 crash的数字表格 Description 今天的数学课上,Crash小朋友学习了最小公倍数(Least Common Multiple).对于两个正整数a和b,LCM(a, b ...
随机推荐
- iOS开发——高级篇——iOS 项目的目录结构
最近闲来无事去面试一下iOS开发,让我感到吃惊的,面试官竟然问怎么分目录结构,还具体问每个子目录的文件名. 目录结构确实非常重要,面试官这么问,无疑是想窥探开发经验.清晰的目录结构,可让人一眼明白相应 ...
- .NET下为百度文本编辑器UEditor增加图片删除功能
[摘要:比来写了个项目,用到了UEditor,但是UE并出有文件删除功效 然后网上找若何增加 找半天只能找到一个1.2.X的 以是便摹仿PHP的 改成了.NET的 PHP本文 第一步 (增加背景删除地 ...
- update-java-alternatives 更改默认Java环境
Ubuntu/debian 更改默认Java环境 我的电脑里安装了两个版本的Java,一个是java-6-sun,还有一个是java-gcjgcj是在JVM非常缓慢的时候诞生的,他可以把Java代码编 ...
- CSU 1806 Toll 自适应simpson积分+最短路
分析:根据这个题学了一发自适应simpson积分(原来积分还可以这么求),然后就是套模板了 学习自适应simpson积分:http://blog.csdn.net/greatwall1995/arti ...
- 【Codevs1080】质数环
http://codevs.cn/problem/1031/ 不讲什么,预处理素数+搜索 // <C.cpp> - Sun Oct 9 12:58:23 2016 // This file ...
- 蓝书4.1-4.4 树状数组、RMQ问题、线段树、倍增求LCA
这章的数据结构题很真实 T1 排队 bzoj 1699 题目大意: 求静态一些区间的最大值-最小值 思路: ST表裸题 #include<iostream> #include<cst ...
- Linux 常用命令大全2
Linux 常用命令大全 [帮助命令] command —help man command man 2 command 查看第2个帮助文件 man -k keyword 查找含有关键字的帮助 info ...
- request.getRemoteAddr()和request.getRemoteHost()
转自:https://www.cnblogs.com/aizj/p/7593209.html request.getRemoteAddr()是获得客户端的ip地址.request.getRemoteH ...
- 19.Extjs主页面显示js
1. /** * @author sux * @time 2011-1-11 * @desc main page */ var mainPage = Ext.extend(Ext.Viewport,{ ...
- vue项目开发中踩过的坑
一.路由 这两天移动端的同事在研究vue,跟我说看着我的项目做的,子路由访问的时候是空白的,我第一反应是,不会模块没加载进来吧,还是....此处省略一千字... 废话不多说上代码 路由代码 { pat ...