不知道什么算法。

首先求一颗植物(i,j)与能量采集器的连线上有几颗植物。

答案是(gcd(i,j)-1),设i’= i/gcd(i,j),j’=j/gcd(i,j).

则这几颗植物是(i’k,j’k)    1<=k<gcd(i,j)且k为整数。

所以答案就转换成了求很多个gcd。

因为n和m都比较大,所以我们可以枚举gcd。

一个数i作为gcd的次数等于 (n/i)*(m/i) – gcd比i大的数。

gcd比i大的数我们也可以很方便地求出。

#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
const int maxn = 100000 + 10;long long ans[maxn],cnt[maxn];
long long m,n,res;int main() {scanf("%lld%lld",&n,&m);if(n>m) swap(n,m);for(int i=2;i<=n;i++) cnt[i]=(n/i)*(m/i);for(int i=n;i>=2;i--) {ans[i]=cnt[i];for(int j=2;i*j<=n;j++) ans[i]-=ans[i*j];}for(int i=2;i<=n;i++) res+=(i-1)*ans[i];printf("%lld\n",res*2+n*m);return 0;
}

转载于:https://www.cnblogs.com/invoid/p/5527753.html

bzoj2005: [Noi2010]能量采集相关推荐

  1. [2019.1.14]BZOJ2005 [Noi2010]能量采集

    以下设\(n\ge m\). 首先,一个点\((x,y)\)到\((0,0)\)的路径上经过的点的数量(不包括首尾)为\(gcd(x,y)-1\). 所以它的能量损耗为\(2\times gcd(x, ...

  2. BZOJ2005: [Noi2010]能量采集 莫比乌斯反演的另一种方法——nlogn筛

    分析:http://www.cnblogs.com/huhuuu/archive/2011/11/25/2263803.html 注:从这个题收获了两点 1,第一象限(x,y)到(0,0)的线段上整点 ...

  3. BZOJ2005 NOI2010 能量采集 欧拉函数

    题意:求$\sum\limits_{i = 1}^N {\sum\limits_{j = 1}^M {f(i,j)} } $,其中f(i,j)=(0,0)与(i,j)连线上点的数量 题解: 如果一个点 ...

  4. [NOI2010]能量采集

    469. [NOI2010]能量采集 ★★☆   输入文件:energy2010.in   输出文件:energy2010.out   简单对比 时间限制:1 s   内存限制:512 MB [问题描 ...

  5. (每日一题)P1447 [NOI2010] 能量采集(莫反套路 + 欧拉反演 / 容斥原理)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 每日一题(莫反 / 多项式 / 母函数 / 群论) 2021.4.19 莫反 Problem Solu ...

  6. P1447 [NOI2010]能量采集(mobius反演)

    P1447 [NOI2010]能量采集 式子化简 显然题目就是要我们求∑i=1n∑j=1m2gcd(i,j)−1\sum_{i = 1} ^{n} \sum_{j = 1} ^{m} 2gcd(i, ...

  7. P1447 [NOI2010] 能量采集

    P1447 [NOI2010] 能量采集 题意: 如果一棵植物与能量汇集机器(坐标为0,0)连接而成的线段上有 k 棵植物,则能量的损失为 2k + 1 给你一个n*m的植物园,问能量损失是多少 1& ...

  8. BZOJ 2005: [Noi2010]能量采集( 数论 + 容斥原理 )

    一个点(x, y)的能量损失为 (gcd(x, y) - 1) * 2 + 1 = gcd(x, y) *  2 - 1. 设g(i)为 gcd(x, y) = i ( 1 <= x <= ...

  9. bz2005 2005: [Noi2010]能量采集 数学题

    2005: [Noi2010]能量采集 Time Limit: 10 Sec  Memory Limit: 552 MB Submit: 2494  Solved: 1475 [Submit][Sta ...

最新文章

  1. mysql取消外码约束_MySQL 关闭子表的外键约束检察方法
  2. java Mina sftp_java – 使用Apache Mina作为模拟/内存SFTP服务器进行单元测试
  3. 如何在SAP社区上查找其他SAP从业者遇到的问题或者提新问题
  4. Bootstrap学习笔记(四)-----Bootstrap每天必学之表单
  5. birt报表与现有系统的集成
  6. BZOJ 1006 神奇的国度(弦图的染色数)
  7. Android 4.0 ICS SystemUI浅析——StatusBar结构分析
  8. sharepoint页面添加后台代码
  9. 响应式个人简历网页源代码
  10. 记录一次win10美化之路
  11. UltraEdit 26 总是偶尔提示运行的是试用模式
  12. 股票分时图的11种手法
  13. 超级干货:光纤知识总结最全的文章,盘它!
  14. Unity Shader 一 激光特效Shader
  15. RAW to FITS
  16. 如何制作千人千面的NFT?如何存储NFT?#Crystals #nft.storage #ipfs
  17. 微信小程序开发学习5(自定义组件)
  18. java 内存溢出 jstack,Java——命令jps、jstat、jmap、jstack、jhat、jinfo
  19. 科技互联网相关的微信公众号图文应该怎样排版?
  20. 将低版本CAD图纸转换成2018版本应该如何操作?

热门文章

  1. 基于Spring读写分离
  2. 【BZOJ1778】[Usaco2010 Hol]Dotp 驱逐猪猡 期望DP+高斯消元
  3. Java中树的存储结构实现
  4. 为CodeLove编写插件——常用软件扫描(SoftwareToScan)
  5. MySQL 主外键约束与标准SQL不同的地方
  6. C 语言高效编程与代码优化
  7. 0913作业(冒泡排序、二分查找法、模拟摇乐游戏)
  8. ES使用脚本进行局部更新的排错记录
  9. 初识Qt Creator
  10. 把字符串分隔成多行的多种方法实践