原题链接:https://www.lydsy.com/JudgeOnline/problem.php?id=2190

仪仗队

Description

作为体育委员,C君负责这次运动会仪仗队的训练。仪仗队是由学生组成的N * N的方阵,为了保证队伍在行进中整齐划一,C君会跟在仪仗队的左后方,根据其视线所及的学生人数来判断队伍是否整齐(如下图)。

现在,C君希望你告诉他队伍整齐时能看到的学生人数。

Input

共一个数N。

Output

共一个数,即C君应看到的学生人数。

Sample Input

4

Sample Output

9

HINT
【数据规模和约定】

对于 100% 的数据,1 ≤ N ≤ 40000

题解

看得到的矩形肯定是边长互质的,所以可以列式子:

∑i=1n∑j=1n[gcd(i,j)=1]∑i=1n∑j=1n[gcd(i,j)=1]

\sum_{i=1}^n\sum_{j=1}^n[gcd(i,j)=1]

简单的化简一下:

∑d=1nμ(d)⌊nd⌋⌊nd⌋∑d=1nμ(d)⌊nd⌋⌊nd⌋

\sum_{d=1}^n\mu(d)\lfloor\frac{n}{d}\rfloor\lfloor\frac{n}{d}\rfloor

然后O(n)O(n)O(n),很爽。

网上还有一堆套φφ\varphi的。。。

代码
#include<cstdio>
using namespace std;
const int M=4e4+5;
int miu[M],p[M/3],n,ans;
bool isp[M];
void pre(int n)
{miu[1]=isp[1]=1;for(int i=2,t;i<=n;++i){if(!isp[i])p[++p[0]]=i,miu[i]=-1;for(int j=1;j<=p[0];++j){t=i*p[j];if(t>n)break;isp[t]=1;if(i%p[j]==0){miu[t]=0;break;}miu[t]=-miu[i];}ans+=miu[i]*(n/i)*(n/i);}ans+=n*n;
}
void in(){scanf("%d",&n);}
void ac(){n-=1;pre(n);printf("%d",ans+2);}
int main(){in();ac();}

BZOJ2190 [SDOI2008]仪仗队相关推荐

  1. bzoj2190 [SDOI2008]仪仗队(欧拉函数)

    2190: [SDOI2008]仪仗队 Time Limit: 10 Sec  Memory Limit: 259 MB Submit: 3203  Solved: 2062 [Submit][Sta ...

  2. BZOJ2190 SDOI2008 仪仗队

    flag:数论,欧拉函数. http://www.lydsy.com/JudgeOnline/problem.php?id=2190 PS:我们发现当x1=k*x y1=k*y时 此刻正能看见一个 于 ...

  3. 「BZOJ2190」[SDOI2008] 仪仗队 - 欧拉函数

    ->点我进原题 [SDOI2008] 仪仗队 时空限制 1000ms / 128MB Description 作为体育委员,C君负责这次运动会仪仗队的训练.仪仗队是由学生组成的N * N的方阵, ...

  4. BZOJ 2190: [SDOI2008]仪仗队( 欧拉函数 )

    假设C君为(0, 0), 则右上方为(n - 1, n - 1). 一个点(x, y) 能被看到的前提是gcd(x, y) = 1, 所以 answer = ∑ phi(i) * 2 + 2 - 1 ...

  5. BZOJ 2190: [SDOI2008]仪仗队

    2190: [SDOI2008]仪仗队 Time Limit: 10 Sec  Memory Limit: 259 MB Submit: 2689  Solved: 1713 [Submit][Sta ...

  6. bzoj 2190: [SDOI2008]仪仗队 线性欧拉函数

    2190: [SDOI2008]仪仗队 Time Limit: 10 Sec  Memory Limit: 259 MB [Submit][Status][Discuss] Description 作 ...

  7. 「欧拉定理」[SDOI2008]仪仗队

    [SDOI2008]仪仗队 https://ac.nowcoder.com/acm/problem/20313 题目描述 作为体育委员,C君负责这次运动会仪仗队的训练. 仪仗队是由学生组成的N * N ...

  8. 洛谷P2158 [SDOI2008]仪仗队

    题目描述 作为体育委员,C君负责这次运动会仪仗队的训练.仪仗队是由学生组成的N * N的方阵,为了保证队伍在行进中整齐划一,C君会跟在仪仗队的左后方,根据其视线所及的学生人数来判断队伍是否整齐(如下图 ...

  9. 【BZOJ】2190 [SDOI2008]仪仗队

    [算法]欧拉函数 欧拉线性筛 [题解]将图从左至右,从下至上,分别标号0~n-1. 除了坐标0,一个点会被观察到当且仅当其坐标(i,j)的i与j互质,否则会被(i/d,j/d)挡住. 所以累加2~n- ...

  10. [SDOI2008]仪仗队

    洛谷:https://www.luogu.org/problemnew/show/P2158 bzoj:problem 2190 这题就是一道欧拉函数板子题. 对gcd稍微有点了解的人就会知道,在一个 ...

最新文章

  1. ssm商务会员管理系统_会员管理商城开发
  2. MapReduce中源码分析(map端的过程)
  3. 解决ncnn配置中缺少“vulkan”文件
  4. 操作系统原理之进程调度与死锁(三)
  5. 中本聪研究所创始人对Core的发展方向感到厌恶
  6. 自定义弹框,点击提示框外空白区域,让弹框消失
  7. 服务器有效设置防止web入侵
  8. mysql 查询的关键词的执行顺序
  9. Python爬虫框架Scrapy报错:ModuleNotFoundError: No module named 'scrapy'
  10. 深度学习CUDA最新最佳安装教程
  11. 艺体计算机教师考核细则,音体美教师考核办法
  12. DNS服务(二):域名劫持
  13. threejs-自定义着色器材质
  14. Python_Turtle绘制心形线(采用函数描点法绘制)(turtle实现)【2021-10-15】
  15. 数据分析入门篇(一)
  16. mybatis报错:java.sql.SQLException: 无效的列类型: 1111
  17. 2019年最全的大数据学习大纲总结,持续更新.....
  18. 数据库设计(电商平台)
  19. VMware发布Project Monterey
  20. 阿里巴巴-鹿班实验室算法实现系列

热门文章

  1. 神经网络与深度学习第2章:机器学习概述 阅读提问
  2. 1091.二进制矩阵中的最短路径(力扣leetcode) 博主可答疑该问题
  3. 大平房到朝阳环路时间表_冰蓄冷系统设计计算10大要点
  4. java svg to png_如何用Image Magick将SVG转换为PNG?
  5. php对象在内存中的分配
  6. 设计者模式详解--状态模式
  7. BZOJ3835 [Poi2014]Supercomputer 【斜率优化】
  8. C语言 数组和指针
  9. linux下 使用apache2 ab 测试进行压力测试
  10. springmvc 使用Jackson的配置