BZOJ 2818GCD
转载注明出处:http://www.cnblogs.com/radioteletscope/p/7142762.html
题面:
2818: Gcd
Time Limit: 10 Sec Memory Limit: 256 MB
Submit: 5345 Solved: 2400
[Submit][Status][Discuss]
Description
给定整数N,求1<=x,y<=N且Gcd(x,y)为素数的
数对(x,y)有多少对.
Input
一个整数N
Output
如题
Sample Input
Sample Output
HINT
hint
对于样例(2,2),(2,4),(3,3),(4,2)
1<=N<=10^7
令$f[i]=\sum_{d|T}^{} \mu(\frac{T}{d})$
只需线性筛出,再分块处理询问。
1 #include<iostream> 2 #include<cstdio> 3 using namespace std; 4 #define LL long long 5 const int maxn=10000001; 6 int mu[maxn+10],prime[maxn+10],g[maxn+10]; 7 int s[maxn+10]; 8 bool book[maxn+10]; 9 int T,n,cnt; 10 void ss() 11 { 12 mu[1]=1; 13 for(int i=2;i<=maxn;i++) 14 { 15 if(!book[i]) 16 { 17 prime[++cnt]=i; 18 mu[i]=-1; 19 g[i]=1; 20 } 21 for(int j=1;j<=cnt&&i*prime[j]<=maxn;j++) 22 { 23 book[i*prime[j]]=true; 24 if(i%prime[j]) 25 mu[i*prime[j]]=-mu[i],g[i*prime[j]]=mu[i]-g[i]; 26 else 27 { 28 mu[i*prime[j]]=0; 29 g[i*prime[j]]=mu[i]; 30 break; 31 } 32 } 33 } 34 s[0]=0; 35 for(int i=1;i<=maxn;i++) 36 s[i]=s[i-1]+g[i]; 37 } 38 LL caculate() 39 { 40 LL ans=0,last; 41 for(int i=1;i<=n;i=last+1) 42 { 43 last=n/(n/i); 44 ans+=(LL)(s[last]-s[i-1])*(n/i)*(n/i); 45 } 46 return ans; 47 } 48 int main() 49 { 50 ss(); 51 scanf("%d",&n); 52 printf("%lld\n",caculate()); 53 }
BZOJ 2818
转载于:https://www.cnblogs.com/radioteletscope/p/7142762.html
BZOJ 2818GCD相关推荐
- BZOJ.1558.[JSOI2009]等差数列(线段树 差分)
BZOJ 洛谷 首先可以把原序列\(A_i\)转化成差分序列\(B_i\)去做. 这样对于区间加一个等差数列\((l,r,a_0,d)\),就可以转化为\(B_{l-1}\)+=\(a_0\),\(B ...
- S-T平面图中利用最短路求最小割(BZOJ 1001)
BZOJ 1001: [BeiJing2006]狼抓兔子 最小割 题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1001 现在小朋友们最喜欢 ...
- BZOJ 1124: [POI2008]枪战Maf(构造 + 贪心)
题意 有 \(n\) 个人,每个人手里有一把手枪.一开始所有人都选定一个人瞄准(有可能瞄准自己).然后他们按某个顺序开枪,且任意时刻只有一个人开枪. 因此,对于不同的开枪顺序,最后死的人也不同. 问最 ...
- BZOJ 2957楼房重建
传送门 线段树 //Twenty #include<cstdio> #include<cstdlib> #include<iostream> #include< ...
- BZOJ.5249.[九省联考2018]iiidx(贪心 线段树)
BZOJ LOJ 洛谷 \(d_i\)不同就不用说了,建出树来\(DFS\)一遍. 对于\(d_i\)不同的情况: Solution 1: xxy tql! 考虑如何把这些数依次填到树里. 首先对于已 ...
- bzoj 4871: [Shoi2017]摧毁“树状图”
4871: [Shoi2017]摧毁"树状图" Time Limit: 25 Sec Memory Limit: 512 MB Submit: 53 Solved: 9 [Su ...
- BZOJ 1592. Making the Grade(思维,数据结构优化DP,以及三个拓展问题)[Usaco2008 Feb]【BZOJ计划】
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 BZOJ简单题合集x 目录 BZOJ 1592. Making the Grade 拓展问题一 拓展问 ...
- BZOJ 1590.Secret Message 秘密信息(Trie树) [Usaco2008 Dec]【BZOJ计划】
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 BZOJ简单题合集x Weblink https://hydro.ac/d/bzoj/p/1590 P ...
- BZOJ 1589 Trick or Treat on the Farm (tarjan缩点,记忆化搜索)[Usaco 2008 Dec Gold]【BZOJ计划】
整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Weblink https://hydro.ac/d/bzoj/p/1589 Problem 每年万圣 ...
最新文章
- python简介怎么写-python简历模板范文
- 【AI初识境】给深度学习新手开始项目时的10条建议
- ffmpeg如何在结尾添加帧_一种“视频帧对齐”的测试方案实践
- TypeScript React
- 人生:沉得住气,方成得了器!
- 虚拟键码对照表与ASCII对照表的整理
- 微课|中学生可以这样学Python(例6.2):列表循环左移位
- Python+OpenCV:二维直方图(2D Histograms)
- JavaWeb—作业【建立新闻数据库以及插入数据】
- 华为 “Telnet” 登录设备
- 2020-11-17 一道有趣的求极限问题
- DDD战略建模在重构业务系统时的实践
- Linux内核延迟写机制学习
- Linux下载安装Netcat
- ITK4.12+VS2015配置详解
- hdu 4009 Transfer water(最小树形图模板)
- 记录:Java序列化
- 关于64位整型int64_t
- 组播IGMP-原理介绍+报文分析+配置示例
- iPhone 11依然坚挺的原因是什么?