bzoj 4805: 欧拉函数求和
Submit: 539 Solved: 304
[Submit][Status][Discuss]
Description
Input
Output
Sample Input
Sample Output
HINT
Source
By FancyCoder
杜教筛模板题,好久没打了练练手hhh
(一开始把i和j写反了WA了一墙hhhh)
/**************************************************************Problem: 4805User: JYYHHLanguage: C++Result: AcceptedTime:1524 msMemory:64772 kb ****************************************************************/#include<bits/stdc++.h> #define ll unsigned long long #define maxn 5000000 using namespace std; map<ll,ll> mmp; int zs[maxn+5],t=0; ll phi[maxn+5],n; bool v[maxn+5];inline void init(){phi[1]=1;for(int i=2;i<=maxn;i++){if(!v[i]) zs[++t]=i,phi[i]=i-1;for(int j=1,u;j<=t&&(u=zs[j]*i)<=maxn;j++){v[u]=1;if(!(i%zs[j])){phi[u]=phi[i]*zs[j];break;}phi[u]=phi[i]*(zs[j]-1);}}for(int i=1;i<=maxn;i++) phi[i]+=phi[i-1]; }inline ll sum(ll x){if(x<=maxn) return phi[x];if(mmp.count(x)) return mmp[x];ll ans=x*(x+1)>>1ll,j;for(ll i=2;i<=x;i=j+1){j=x/(x/i);ans-=sum(x/i)*(j-i+1);}mmp[x]=ans;return ans; }int main(){init();scanf("%llu",&n);printf("%llu\n",sum(n));return 0; }
转载于:https://www.cnblogs.com/JYYHH/p/8287379.html
bzoj 4805: 欧拉函数求和相关推荐
- 欧拉函数的相关应用 noj欧拉函数求和+noj 最大公约数求和
注意求欧拉函数之和是每个因子的欧拉函数之和不是质因子.而欧拉函数的值是它本身与它的因子件事互质的关系,这样的因子有多少个.点击打开链接 #include<stdio.h> #include ...
- BZOJ - 2186 欧拉函数
题目的意思大概是求1~N!中和M!互质的数的个数 因为对欧拉函数理解不够深刻所以我是分析得到结果的: 当N<=M的时候显然符合要求的数的个数为0: 当N>M的时候我们要求的是1~N!中不含 ...
- bzoj 2818 欧拉函数
思路:就是对于某个数q,跟他互质的数p,kp和kq的最大公约数是k,那么这个数能组成的答案的数量就是phi[i]乘以某个质数,且乘积小于n 基于这种思路写下这个代码 #include <cstd ...
- BZOJ 4802: 欧拉函数(大数因数分解算法 Pollard_rho 和素数测试算法 Miller_Rabin)
Description 已知N,求phi(N) Input 正整数N.N<=10^18 Output 输出phi(N) Sample Input 8 Sample Output 4 Soluti ...
- BZOJ2818-莫比乌斯反演/欧拉函数
这道题之前没有看数论函数的时候搞懂了,想到直接用欧拉函数做,现在再来看第一个想法就是这不是莫比乌斯反演嘛. 但还是能用简单数论知识直接做出来的还是尽量做简单一点. 两种方法想到后都写的差不多对了,都爆 ...
- AcWing 874. 筛法求欧拉函数(线性筛法求欧拉函数模板)
给定一个正整数 n,求 1∼n 中每个数的欧拉函数之和. 输入格式 共一行,包含一个整数 n. 输出格式 共一行,包含一个整数,表示 1∼n 中每个数的欧拉函数之和. 数据范围 1≤n≤10^6 输入 ...
- bzoj 1409 Password 矩阵快速幂+欧拉函数
可以发现,该数组的mi就是斐波那契数列 所以要矩阵快速幂搞出第n位 但是斐波那契数列上涨的很快,这就需要欧拉定理了 p^phi(q)%q=1(gcd(p,q)==1) p是素数,所以可以用 然后需要5 ...
- bzoj 3884: 上帝与集合的正确用法(欧拉函数)
3884: 上帝与集合的正确用法 Time Limit: 5 Sec Memory Limit: 128 MB Submit: 2574 Solved: 1151 [Submit][Status] ...
- bzoj 2705: [SDOI2012]Longge的问题(欧拉函数)
2705: [SDOI2012]Longge的问题 Time Limit: 3 Sec Memory Limit: 128 MB Submit: 3077 Solved: 1914 [Submit ...
最新文章
- python画折线图代码-Python折线图的分析过程和画图的方法
- 并查集+二分-hdu-4750-Count The Pairs
- mfc messagebox 非模态_進博尋寶記:當進博遇見非遺?愛上中國傳統文化--財經-
- NeurIPS 2018 | 腾讯AI Lab:可自适应于不同环境和任务的强化学习方法
- SylixOS异常管理
- IIS 之 Asp.Net项目内部运行详解
- ug区域轮廓铣没有重叠距离_UG数控加工编程 _固定轴、可变轴曲面轮廓铣图文详解...
- Linux 启动顺序
- CSS Word的文档结构视图设计
- video4linux(v4l)使用摄像头的实例基础教程与体会
- 思科中国创新中心落户广州 打造年产值超千亿元万物互联“智慧城市”
- 【高校宿舍管理系统】终章 完成主页以及项目总结
- Java成神之路——String长度限制
- 正月十五元宵节中国风海报PSD分层模板找灵感!
- python mongodb 设置密码前一篇ok,csv文件存入mongodb
- Flex样式工作原理
- Fedora系统配置中文输入法
- QT学习之QQ聊天案例
- 用kodexplorer免费搭建一个协同办公平台
- Android Camera 预览及录制视频 附demo
热门文章
- 第一模块 jdk与jre、==与equals、Math.round(-1.5)、 String、操作字符串的类、字符串反转、抽象类必须要有抽象方法吗、普通类和抽象类、BIO NIO AIO
- Slack 开发入门之 Incoming Webhooks:往 Slack 的 Channel 中发消息
- JS实现将数字金额转换为大写人民币汉字
- Fastapi学习笔记(一)
- 对于青少年编程等级考试的认识
- 未来人工智能发展面临的问题
- [大家的项目] cargo-offline 命令
- [XCode] XCode 6 中修改模拟器版本
- 计算机中的PS颜色填充快捷键,ps颜色填充快捷键【设置办法】
- 网络游戏服务器架构设计