欧拉函数 cojs 2181. 打表
cojs 2181. 打表
★☆ 输入文件:sendtable.in
输出文件:sendtable.out
简单对比
时间限制:1 s 内存限制:256 MB
【题目描述】
有一道比赛题目,输入两个整数x,y(1≤x,y≤n),输出某个函数f(x,y)。有位选手想打表(即事先计算出所有的f(x,y),写在源代码里),但是表太大了,原代码超过了比赛的限制,需要精简。
好在那道题目有一个性质,使得很容易根据f(x,y)算出f(x*k,y*k)(其中k是正整数),这样有一些f(x,y)就不需要存在表里了。
输入n(n≤50000),你的任务是统计最简的表里有多少个元素。例如,n=2时有3个(1,1),(1,2),(2,1)。
【输入格式】
输入只有一行,一个整数n;
【输出格式】
输出也仅有一行,即表里元素的个数。
【样例输入】
2
【样例输出】
3
1 /*题目的要求可以这样理解,假设x<y求出小于y的所有与y互质的数的个数,这就是欧拉函数的定义了,然后因为x,y可以互换,所以最终的结果就是 2 小于等于n,大于等于2的所有的数的欧拉函数*2+1(+1是因为有(1,1)这个情况) 3 */ 4 #define N 50011 5 #include<iostream> 6 using namespace std; 7 #include<cstdio> 8 int phi[N+10]={0}; 9 int n; 10 void get_phi()/*定义法求欧拉函数*/ 11 { 12 phi[1]=1; 13 for(int i=2;i<=N;++i) 14 { 15 if(!phi[i]) 16 { 17 for(int j=i;j<=N;j+=i) 18 { 19 if(!phi[j]) 20 phi[j]=j; 21 phi[j]=phi[j]/i*(i-1);/*注意这里一定要先除后乘,因为它的定义中就是这样先进行除法,再进行减法*/ 22 } 23 } 24 } 25 } 26 int main() 27 { 28 freopen("sendtable.in","r",stdin); 29 freopen("sendtable.out","w",stdout); 30 get_phi(); 31 scanf("%d",&n); 32 long long ans=0; 33 for(int i=2;i<=n;++i) 34 ans+=phi[i]; 35 cout<<(ans*2+1)<<endl; 36 fclose(stdin);fclose(stdout); 37 return 0; 38 }
转载于:https://www.cnblogs.com/c1299401227/p/5553061.html
欧拉函数 cojs 2181. 打表相关推荐
- 【欧拉函数】 欧拉函数计算及打表
文章目录 一.欧拉函数简介 二.欧拉函数计算 三.欧拉函数值打表 四.练手题目 一.欧拉函数简介 在数论中,对正整数n,欧拉函数是小于或等于n的正整数中与n互质的数的数目(因此φ(1)=1).此函数以 ...
- POJ 2480 (约数+欧拉函数)
题目链接: http://poj.org/problem?id=2480 题目大意:求Σgcd(i,n). 解题思路: 如果i与n互质,gcd(i,n)=1,且总和=欧拉函数phi(n). 如果i与n ...
- 欧拉函数/欧拉函数打表 lightoj1370(java/c++ )
例题 欧拉函数/素数判定 题目链接 题目 Bamboo Pole-vault是Xzhiland的一项大受欢迎的运动. Phi-shoe大师是他成功的非常受欢迎的教练.他需要为他的学生提供一些竹子,所以 ...
- 筛表合集(素数筛 欧拉函数筛 莫比乌斯函数筛)
[目录] 一.素数筛 1.素数判断 2.素数普通筛 3.素数线性筛 4.素数区间筛 二.欧拉函数筛 三.莫比乌斯函数筛 [素数筛] 1.直接判定质数 bool judgePrime( int num ...
- UVA11424 GCD - Extreme (I)【欧拉函数打表】
Given the value of N, you will have to find the value of G. The definition of G is given below: G=∑i ...
- UVA10990 Another New Function【欧拉函数打表】
The depth of phi value of a number is denoted by the number of steps required before it reaches 1. A ...
- UVa 10820 (打表、欧拉函数) Send a Table
题意: 题目背景略去,将这道题很容易转化为,给出n求,n以内的有序数对(x, y)互素的对数. 分析: 问题还可以继续转化. 根据对称性,我们可以假设x<y,当x=y时,满足条件的只有(1, 1 ...
- 【数学专题】约数个数与欧拉函数
整理的算法模板合集: ACM模板 目录 一.约数个数 1. AcWing 1291. 轻拍牛头 2. AcWing 1294. 樱花 2.1 AcWing 197. 阶乘分解 3. AcWing 19 ...
- 欧拉函数 - HDU1286
欧拉函数的作用: 有[1,2.....n]这样一个集合,f(n)=这个集合中与n互质的元素的个数.欧拉函数描述了一些列与这个f(n)有关的一些性质,如下: 1.令p为一个素数,n = p ^ k,则 ...
最新文章
- 一定要加强SQL数据库SA
- python 显示RGB颜色
- 自定义控件:下拉刷新
- 第九届蓝桥杯java B组—第六题递增三元组(详细介绍)
- Android Studio 代码混淆
- linux集群时间同步搭建
- PM2怎么保持Node应用程序永久活动?
- cad vba 打开文件对话框_Excel VBA和文件夹-1.7通过对话框灵活选定文件夹并打开对应文件...
- 计算机端口详解(总结)
- LabVIEW编程LabVIEW开发Agilent 4294A 例程与相关资料
- ado全称_JDBC、ODBC、OLE DB、ADO、ADOMD区别与联系
- 计算机专业的可迁移技能,动词可迁移技能的发现.PPT
- [推荐系统]协同过滤介绍
- docker仓库——搭建registry私有仓库
- 误删除了linux的raid1,RAID管理与恢复误删除文件
- mtk8788 pwm频率及背光亮度调节
- 【英文版+中文版】2021年美国大学生数学建模赛题发布!!!
- jdk11中使用JavaFx
- 2020年环境经济学国际研讨会(EEC 2020)
- 02_平面转换 transform
热门文章
- 浅谈进程间的消息传递
- VC++ 读取和保存文件对话框及默认目录
- 后台运行python程序 遇到缓冲区问题
- mysql中的boolean tinyint
- [react-router] React-Router 4的switch有什么用?
- ant design datepicker处理日期范围操作
- [html] 当img标签中的src图片加载失败时,怎么让它变得更美观呢?
- [jQuery] 针对jQuery的优化方法有哪些?
- [html] 你有使用过ins标签吗?说说它的用途
- [vue] vue实例挂载的过程是什么?