【BZOJ】【2693】JZPTAB
2024-10-12 09:30:29
莫比乌斯反演
PoPoQQQ讲义第5题,是BZOJ 2154的升级版(多次询问)
题解:http://blog.csdn.net/popoqqq/article/details/42078725
WA:应该输出(ans+P)%P……而不是ans
/**************************************************************
Problem: 2693
User: Tunix
Language: C++
Result: Accepted
Time:5128 ms
Memory:245416 kb
****************************************************************/ //BZOJ 2693
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
#define rep(i,n) for(int i=0;i<n;++i)
#define F(i,j,n) for(int i=j;i<=n;++i)
#define D(i,j,n) for(int i=j;i>=n;--i)
using namespace std; int getint(){
int v=,sign=; char ch=getchar();
while(ch<''||ch>'') {if (ch=='-') sign=-; ch=getchar();}
while(ch>=''&&ch<='') {v=v*+ch-''; ch=getchar();}
return v*=sign;
}
/*******************tamplate********************/
typedef long long LL;
const int N=1e7+,P=;
LL prime[N];
LL h[N],sum[N]={};
bool check[N]; void getmu(int n){
h[]=;
int tot=;
for(int i=;i<n;++i){
if (!check[i]){
prime[tot++]=i;
h[i]=(i-(LL)i*i)%P;
}
rep(j,tot){
if (i*prime[j]>n) break;
check[i*prime[j]]=;
if (i%prime[j]) h[i*prime[j]]=h[prime[j]]*h[i]%P;
else{
h[i*prime[j]]=(prime[j]*h[i])%P;
break;
}
}
}
F(i,,n-)
sum[i]=(sum[i-]+h[i])%P;
}
inline LL Sum(LL n,LL m){
LL re1=n*(n+)/%P,
re2=m*(m+)/%P;
return re1*re2%P;
}
int main(){
getmu(N-);
int T=getint();
LL n,m;
while(T--){
n=getint(); m=getint();
if (n>m) swap(n,m);
LL i,last,ans=;
for(i=;i<=n;i=last+){
last=min(n/(n/i),m/(m/i));
ans=(ans+Sum(n/i,m/i)*(sum[last]-sum[i-])%P)%P;
}
printf("%lld\n",(ans+P)%P);
}
return ;
}
2693: jzptab
Time Limit: 10 Sec Memory Limit: 512 MB
Submit: 539 Solved: 211
[Submit][Status][Discuss]
Description
Input
一个正整数T表示数据组数
接下来T行 每行两个正整数 表示N、M
Output
T行 每行一个整数 表示第i组数据的结果
Sample Input
1
4 5
Sample Output
122
HINT
T <= 10000
N, M<=10000000
HINT
Source
最新文章
- ESLint规则配置说明
- T-SQL 常用语句
- sbt的assembly插件使用(打包所有依赖)
- 有人向我反馈了一个bug
- WCF的通信
- android驱动程序之 - sensor
- elk 索引
- 常用JS工具包
- Docker 最常用的监控方案 - 每天5分钟玩转 Docker 容器技术(78)
- [BZOJ1607] [Usaco2008 Dec] Patting Heads 轻拍牛头 (数学)
- zabbix监控特定脚本有无生成
- (5)TCP和UDP协议
- Volatile关键字理解
- tensorflow实现循环神经网络
- if 判断文件
- React (native) 相关知识
- CAS (6) —— Nginx代理模式下浏览器访问CAS服务器网络顺序图详解
- 关于redis连接池
- linux进程永久放后台运行
- 编译原理(六)自底向上分析之LR分析法