BZOJ 2190 [SDOI2008]仪仗队 欧拉函数
来源:互联网 发布:php工作前景怎么样 编辑:程序博客网 时间:2024/05/18 03:08
Description
作为体育委员,C君负责这次运动会仪仗队的训练。仪仗队是由学生组成的N * N的方阵,为了保证队伍在行进中整齐划一,C君会跟在仪仗队的左后方,根据其视线所及的学生人数来判断队伍是否整齐(如下图)。 现在,C君希望你告诉他队伍整齐时能看到的学生人数。
Input
共一个数N。
Output
共一个数,即C君应看到的学生人数。
Sample Input
4
Sample Output
9
HINT
【数据规模和约定】 对于 100% 的数据,1 ≤ N ≤ 40000
传送门
竟然发现这个题没写题解……赶紧来补一发、
很容易看出条件是gcd(x,y)=1,那么(x,y)可以被看到。
如何统计这个呢。。这个矩阵实际上是对称的,
假设枚举了x,那么每次求出几个y和它互质即可,
那么同理y的情况是一样的,答案要*2.
最后别忘了特殊的3个点。
#include<cstdio>#include<algorithm>#define ll long long#define TY 1000000007using namespace std;int lenty,prime[5000];bool zcr[40005];ll a,b,phi[40005];int main(){lenty=0;for (int i=2;i<=40000;i++){if (!zcr[i])phi[i]=i-1,prime[++lenty]=i;for (int j=1;j<=lenty && i*prime[j]<=40000;j++){zcr[i*prime[j]]=1;if (i%prime[j]==0)phi[i*prime[j]]=phi[i]*prime[j];elsephi[i*prime[j]]=phi[i]*(prime[j]-1); }}scanf("%lld",&a);if (a==1) return puts("0"),0;phi[0]=(ll)0;for (int i=1;i<=40000;i++)phi[i]=phi[i-1]+phi[i];ll tyans=phi[a-1]*2+3;printf("%lld\n",tyans);return 0;}
阅读全文
0 0
- BZOJ-2190-仪仗队-SDOI2008-欧拉函数
- BZoj 2190: [SDOI2008]仪仗队【欧拉函数】
- bzoj 2190: [SDOI2008]仪仗队 欧拉函数
- 【bzoj 2190】[SDOI2008]仪仗队 欧拉函数
- [BZOJ 2190][SDOI2008]仪仗队:欧拉函数
- BZOJ 2190: [SDOI2008]仪仗队 欧拉函数
- BZOJ 2190 [SDOI2008]仪仗队 欧拉函数
- ♥BZOJ 2190: [SDOI2008]仪仗队【欧拉函数】
- [bzoj 2190] [SDOI2008]仪仗队:欧拉函数,线性筛
- BZOJ 2190 [SDOI2008]仪仗队——欧拉函数
- [SDOI2008]仪仗队 欧拉函数
- 【bzoj2190】【sdoi2008】【仪仗队】【欧拉函数】
- Bzoj2190:[SDOI2008]仪仗队:欧拉函数
- [BZOJ2190] [SDOI2008] 仪仗队 - 欧拉函数
- bzoj2190: [SDOI2008]仪仗队(欧拉函数)
- BZOJ 2190 [SDOI2008]仪仗队
- bzoj 2190: [SDOI2008]仪仗队
- BZOJ 2190: [SDOI2008]仪仗队
- 简单的android折线图绘制
- Xgboost中对于二分类和多分类的Gradient和Hessian的求法
- 文章标题
- 看论文,做笔记系列(1)——Network in Network
- Python操作Redis数据库
- BZOJ 2190 [SDOI2008]仪仗队 欧拉函数
- 我的研究生考后感
- 使用httpclient中EntityUtils类解析entity遇到socket closed错误的原因
- java实现发牌洗牌功能
- 用JAVA实现Vigenre加密
- CSS预处理
- struts-config.xml详解配置文件
- Python时间序列案例分析实战--奶牛产奶量预测
- 链接器详解