首页 > 其他分享 >欧拉函数φ

欧拉函数φ

时间:2024-09-23 14:13:24浏览次数:8  
标签:frac 函数 int varphi times 欧拉

欧拉函数

欧拉函数,即 \(\varphi(n)\),表示的是小于等于 \(n\) 和 \(n\) 互质的数的个数,详细定义看wiki

欧拉函数其实就是容斥原理的应用,举个例子:

如 \(n=6\),\(1,2,3,4,5,6\) 是整个序列,我们将 \(6\) 的质因子 \(2\),\(3\) 取出,减去小于等于 \(6\) 的 \(2\) 的倍数和 \(3\) 的倍数,但是 \(2\) 和 \(3\) 的公倍数 \(6\) 被减了两次所以还要再加一次:\(6-\frac{6}{2}-\frac{6}{3}+\frac{6}{6}=2\)

将这个公式转化一下就可以得到通用公式(\(p\) 为 \(n\) 的质因数):

\[\varphi(n)=n\times (1- \frac{n}{p_1})\times (1- \frac{n}{p_2}) \times ……\times (1- \frac{n}{p_k}) \]

看什么代码,自己写
#include <bits/stdc++.h>
using namespace std;
#define ll long long
int n,m;
int main(){
    ios::sync_with_stdio(false);
    int t;
    cin>>t;
    while(t--){
    	cin>>n;
	    m=n;
	    for(int i=2;i*i<=n;i++){
	    	if(n%i==0){
	    		m*=(1-1.0/i);
				while(n%i==0){
					n/=i;
				}
			}
		}
		if(n>1){
			m*=(1-1.0/n);
		}
		cout<<m<<"\n";
	}

    return 0;
}

标签:frac,函数,int,varphi,times,欧拉
From: https://www.cnblogs.com/sadlin/p/18426979

相关文章

  • 用递归函数实现汉诺塔游戏
    1.是什么        汉诺塔(HanoiTower)是一个经典的递归问题,描述了将一个由三根柱子组成的塔上的n个大小不一的圆盘从一个柱子移动到另一个柱子上的过程。每次移动只能移动一个圆盘,并且大圆盘不能放在小圆盘上面。思路分析:        当圆盘总数是5时,要将最底层......
  • AWTK fscript 中的 value 扩展函数
    fscript是AWTK内置的脚本引擎,开发者可以在UIXML文件中直接嵌入fscript脚本,提高开发效率。本文介绍一下fscript中的**value扩展函数**value扩展函数value相关的辅助函数。1.value_is_valid判断value是否有效。原型value_is_valid(v)=>bool示例vara=object_c......
  • AWTK fscript 中的 CRC函数
    fscript是AWTK内置的脚本引擎,开发者可以在UIXML文件中直接嵌入fscript脚本,提高开发效率。本文介绍一下fscript中的**CRC函数**CRC函数Cyclicredundancycheck1.crc16crc16函数。原型crc16(str)=>uint16_tcrc16(data,size)=>uint16_tcrc16(binary)=>uint16......
  • 7-41 PAT排名汇总 (25 分)(详解 思路 重写sort函数)兄弟们冲呀呀呀呀呀呀呀
    二:思路===================================================================利用结构体存储学号成绩总排名考点号本考点的排名;然后在输入的时候要记得将j设置成一个变量,这样就能挨个把所有的值都输入到结构体数组当中。再然后就是,向结构体里的变量进行赋值。三:上码......
  • [oeasy]python035_根据序号得到字符_chr函数_字符_character_
    字符(character)回忆上次内容上次了解了ord函数ord的意思是ordinal(序号)ord函数可以根据字符得到序号那么可以反过来吗?根据序号得到字符可以吗?......
  • 函数支持,Fast Request 2024.1.7 发布
    FastRequest是一个类似于Postman的IDEA插件。它是一个强大的restfulapi工具包插件,可以根据已有的方法帮助您快速、自动生成url和params。RestfulFastRequest=API调试工具+API管理工具+API搜索工具。它有一个漂亮的界面来完成请求、检查服务器响应、存储你......
  • c++中内置函数
    intmain(){autofactorial=[&](intn,auto&&self)->int{if(n<=1)return1;returnn*self(n-1,self);//调用自己};std::cout<<"Factorialof5:"<<factorial(5,factorial)......
  • python 函数简记
    一、创建deffuncName():正文defdefine缩写,意为定义funcName函数名:后跟函数内容,要有缩进函数内可用以下形式加入函数文档"""函数描述"""函数文档可通过help(funcName)查看()括号内为形参二、调用直接调用funcName(),括号内补充实参三、参数形参函数定义时,......
  • 【数学二】函数概念、常用函数、函数四大性质
    考试要求1、理解函数的概念,掌握函数的表示法,并会建立应用问题的函数关系.2、了解函数的有界性、单调性、周期性和奇偶性.3、理解复合函数及分段函数的概念、了解反函数及隐函数的概念。4、掌握基本初等函数的性质及其图形、了解初等函数的概念。5、理解极限的概念、理......
  • 字符串比较函数的编写(自己编写一个strcmp函数)
    //17.字符串比较函数的编写\nintdemo2(charstr1[],charstr2[]){ while((*str1++==*str2++)&&*str1&&*str2){//不等长则跳出时指向当前不相等位(++后有一位为空),等长不一样则跳出时指向不相等的下一位 // printf("%c%c\n",*str1,*str2); } if((*str2==*str1)&&(*......