一开始想错了

有时候还是要用欧拉函数的。。

用反演的话需要提取质数,比较麻烦,

先利用初中奥数分成gcd和两个质数,然后剩下的就是互质了

设i=gcd*a ,  j=gcd*b      , b>a所以

ans=   phi(2/2)+phi(4/2)+phi(6/2)+...phi(n/2)

+     phi(3/3)+phi(6/3)+phi(9/3)+...phi(n/3)

...

前缀和即可

码:

#include<iostream>
#include<cstdio>
using namespace std;
#define N 10000007
long long su[N],phi[N],n,i,ans,tot,lin,j;
bool he[N];
void eular(int n)
{phi[1]=1;for(i=2;i<=n;i++){if(!he[i])  {su[++tot]=i;phi[i]=i-1;            }for(j=1;j<=tot&&su[j]*i<=n;j++){he[su[j]*i]=1;if(i%su[j]==0){phi[i*su[j]]=phi[i]*su[j];break;}else phi[i*su[j]]=phi[su[j]]*phi[i]; }   }   for(i=2;i<=n;i++)phi[i]+=phi[i-1];
}
int main()
{scanf("%lld",&n);eular(n);
for(i=1;i<=tot;i++)
{//cout<<su[i];ans+=(phi[n/su[i]]*2-1);
}printf("%lld",ans);
}

2017.9.19 Gcd 思考记录相关推荐

  1. 2017.7.19 Race 思考记录

        此题没有AC!! 但对拍了几个小时了,没有发现问题..但就是过不了 如果有路过的dalao可以帮忙指导一下..感激不尽 码(秒WA): #include<iostream> #in ...

  2. 2017.4.19 数列 思考记录

    这个题还是挺好的,虽然搞了半天   这个题特殊性质挺多的,抓住一个就好办了 首先  对于后面的次方数,前面的数的和肯定小于后面的一个次方数 所以没一个次方数的前面和后面一个都是独立的   可以考虑递推 ...

  3. 2017.10.5 高速公路 思考记录

    ..一开始死活不知道样例8/3是怎么算出来的.. 后来才发现右端点要-1.. 这个题说是期望,但因为每个点的概率相同,所以直接求和然后除就可以了 维护每个区间的答案,听说直接维护答案很难写,,感觉还可 ...

  4. 2017.9.5 组合数学 思考记录

    这题风格很正统.所以我感觉如果自己能不靠题解把这个题做出来,那应该就学得不错了.. 于是在历尽千辛万苦之后,终于1A了.(事后证明 结论题的结论强行无视 乱搞也是有可能AC的) xym&ISA ...

  5. 2017.9.4 Nim 思考记录

    只要知道nim的结论   这题就是链剖板子题.1A 注意bzoj 的  换行符是     \r!!      \r!!      \r!! 就说一下链剖的易错点吧: 1.记录父节点.sz.深度 2.当 ...

  6. 2017.6.6 数表 思考记录

    这个题卡在最后一步了. 最原始的式子是: 这个d|i 且 d|j   看起来非常和善,是不是可以反演? 但d要求同时能整除i和j,怎么办呢? 由于i和j的最大公因数一定包含所有因数,所以我们可以对gc ...

  7. 2017.10.28 排序 思考记录

    这个题有一种套路,就是大小关系转化成01串,这样就变成了二分检验问题,, 就是把排序变成区间修改,然后单点查询.. 把所有比他小的赋成0,比他大的赋成1 然后判断要求位是0还是1来判断答案与当前值的大 ...

  8. 2017.10.28 压缩 思考记录

    这个题首先要知道M和R不是栈的搭配,是贪心的搭配,,就是向左找到第一个M.. 如 abababab cdcdcdcd abababab cdcdcdcd   = abRRcdcdcdcdR != Ma ...

  9. 2017.10.6 单词 思考记录

    少有的会做的ac自动机题 .这个题是匹配模式串. 所以就不需要匹配的过程,只需要建出fail树,然后直接拓扑 由于每次加进去一个单词,这个单词的每一个字母都有可能作为最后一个字母影响他的失配,所以词路 ...

最新文章

  1. SpringCloud(8)微服务监控Spring Boot Admin
  2. ear包目录_Java中的JAR/EAR/WAR包的文件夹结构说明(转)
  3. 科大星云诗社动态20211130
  4. python合并两个有序列表_合并两个有序链表(Python3)
  5. SecureCRT文件传输
  6. php 查询数据库返回json数据
  7. oracle查询包含某个字段的表
  8. Linux shell 之 提取文件名和目录名的一些方法
  9. mysql 80070057_返回E_INVALIDARG (0x80070057)
  10. Matlab遗传算法工具箱(gaot)下载及安装
  11. Webshell实现与隐藏探究
  12. 空间索引 - Redis/MongoDB/PostgreSQL/MySQL空间索引使用报告
  13. 不擅长演讲?值得技术收藏的PPT演讲底层逻辑--大树模型
  14. [Win] 免登录百度网盘高速下载器 ENFI下载器 v1.3.1
  15. 一.数组(10)274. H 指数(不怎么理解)
  16. 线性代数学习笔记——第十八讲——抽象矩阵的可逆性
  17. 信息系统项目管理重点:客户关系管理(CRM)
  18. Vue-router:二级路由跳转另一条路由下的子级
  19. 基于MATLAB的数字滤波器设计
  20. 在宿主机或查看docker id以便传输文件

热门文章

  1. 设计模式笔记四:建造者模式
  2. androidh5混合开发_Android H5混合开发(3):原生Android项目里嵌入Cordova
  3. python处理金融数据_python-金融数据处理demo
  4. 不能bostype没有元数据异常_EAS BOS 开发问题集锦
  5. Cmder安装后相关配置说明
  6. Jade/Pug模板引擎
  7. sop4封装尺寸图_妈妈再也不用担心我PCB封装又做错了~
  8. php dio获取串口数据,flutter通过dio读取二进制数据,比如通过api接口读取图片
  9. linux java echo 3,Linux常用命令13 - echo
  10. phabricator mysql_Phabricator服务的搭建