第一个自己搞出来的反演题、

相比于上一个题,这个题简直和善

直接反演搞,最后一步还不用化简、、

这题放到现在出估计全场都A了

和bzoj3309相比,它只是第一步、

而正解是phi、、

码:

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

2017.9.5 能量采集 思考记录相关推荐

  1. 2017.5.7 能量项链 思考记录

    当时主要是觉得太麻烦,就不会了. 主要是要坚持自己的想法. #include<iostream> #include<cstdio> using namespace std; i ...

  2. 2017.3.24 分裂游戏 思考记录

    事先说明:这不是好题解,这只是思考记录 同机房的xp都学博弈了..    感觉还是学学看吧 先来看一下简单的nim: 题目: Alice和Bob放置了N堆不同的石子,编号1..N,第i堆中有A[i]个 ...

  3. 2017.10.24 上升序列 思考记录

    终于有会做的题了... 一开始想用正常的lis ,然后从前往后扫, 由于最优查询区间在序列上是按顺序单调递增的,所以想记录每个点取哪个值跳到哪,这样是n*m logn的 然后发现既然是单调递增的那直接 ...

  4. 2017.10.7 括号序列 思考记录

    这个题看起来很简单,但细节比较麻烦.参考完别人的代码后才想出自己的解法的.. 一开始认为已匹配的括号是可以直接消的,所以就只维护了两个变量 但还有区间取反.. 由于和已配对的括号的顺序有关,所以不是很 ...

  5. 2017.9.28 约数研究 思考记录

    这个题一开始可能会想复杂, 然而它需要对答案的贡献进行归类 可以发现,一个约数对其倍数的数贡献是一样的,,所以可以考虑离散 所以直接对于每个数不好求,就可以考虑每个约数的贡献 而每个约数i就有n/i个 ...

  6. 2017.5.11 道路修建 思考记录

    这个线段树一眼秒了(主要是有前面的思考经验) 就是维护两个列对应线段上的形态.,比较好想的 但数据结构题有个特点--使你知道结构也不会做----会做也会很大概率爆零.... 所以数据结构题必须 小数据 ...

  7. 2017.5.9 积木大赛 思考记录

    为什么要把这个题放上来?因为这个题还是很有代表性的 首先必须要跳出模拟的思考: 可以忽视每一步具体的操作,直接看目标,这样就会总结出一些规律: 连续上升或连续下降的序列次数一定是最大值,因为每次都可以 ...

  8. 2017.4.25 解方程 思考记录

    这个题好乱啊..n*m就会炸,每个数还都可能是10^10000..这n*ai tm读进去都要10^6效率  . 一般这种似乎没有任何数论定理的东西范围还这么变态只能考虑随机化算法了.. 似乎可以用取模 ...

  9. 2017.3.29 报表统计 思考记录

    有生之年第一道浙江省选题(虽然历史久远并且很水) 记录每个位置数列的左端点和右端点 维护两颗splay   一颗维护全局最小差值,一颗维护相邻最小差值 对于全局splay:每次插入时记录路径取差值mi ...

最新文章

  1. opengl加载多个3ds模型失败记
  2. python学到什么程度可以做兼职-Python学到什么程度可以面试工作(解答一)
  3. 第一百零四节,JavaScript时间与日期
  4. 等重构完这系统,我就辞职
  5. html css 磁贴,使用JS配合CSS实现Windows Phone中的磁贴效果
  6. Eclipse使用SVN
  7. android JNI层线程回调Java函数
  8. mysql索引有哪些了解_Mysql索引(简单了解)
  9. HashMap 和 HashTable 到底哪不同 ?
  10. vue使用element ui实现下拉列表分页的功能!!!
  11. php管理智能dns,负载均衡之DNS轮询
  12. c语言中标识符和关键字,C语言(三) C 标识符和关键字
  13. 一个程序员送给大学生的一些话
  14. php输出1到10的和,php通过排列组合实现1到9数字相加都等于20的方法
  15. c语言进阶.pdf,C语言程序设计进阶:文件.pdf
  16. 使用Configuration Manager部署及管理软件更新(1)
  17. 使用Arcpy进行数据批处理-批量裁剪
  18. Vivado的安装以及使用_入门
  19. Ant实现自动打包部署
  20. 线性代数学习笔记——第十二讲——求解矩阵方程

热门文章

  1. php socket 实现ftp,用socket实现FTP教程
  2. MySQL中单行函数concat_MySQL内置函数-单行函数(字符函数)
  3. word文档被锁定无法编辑的解决方法
  4. 组合学讲义 李乔(2ed)-习题1.1-6组合恒等式题解
  5. 从零开始学Pytorch(十七)之目标检测基础
  6. Fedora配置清华镜像源或者阿里云镜像源
  7. Python3小程序:把连续的16进制UTF8编码转换为字符串
  8. matlab计算三角格网面积,不规则平面图形的面积计算及其MATLAB实现.doc
  9. java token redis生成算法_Redis实现单点登录
  10. python 装饰器的讲解