当前位置: 首页 > news >正文

lanqiaoOJ 4330:欧拉函数模板

【题目来源】
https://www.lanqiao.cn/problems/4330/learning/

【问题描述】
这是一道模板题。
首先给出欧拉函数的定义:即 φ(n) 表示的是小于等于 n 的数中和 n 互质的数的个数。
比如说 φ(6)=2,当 n 是质数的时候,显然有φ(n)=n-1。

【题目大意】
给定 n 个正整数,请你求出每个数的欧拉函数。

【输入格式】
输入共两行。
第一行输入一个整数表示 n。
第二行输入 n 个整数。

【输出格式】
输出共 n 行,每行输出 1 个整数表示对应数字的欧拉函数。​​​​​​​

【输入样例】
3
3 6 8​​​​​​​

【输出样例】
2
2
4

【说明】
小于等于 3 的数中与 3 互质的有:1, 2。
小于等于 6 的数中与 6 互质的有:1, 5。
小于等于 8 的数中与 8 互质的有:1, 3, 5, 7。

【评测数据规模】
保证 1≤n≤100,输入的 n 个整数范围为 [1,
2×10^9]。

【算法分析】
● 欧拉函数
φ(n) 是数论中的重要函数,用于计算小于等于 n 的数中和 n 互质的数的个数。特别地,当 n=1 时,φ(1)=1。

● 欧拉函数的计算公式:若 N 的质因数分解为
N=p₁ᵏ¹×p₂ᵏ²×...×pₘᵏᵐ,则 φ(N)=N×(1-1/p₁)×(1-1/p₂)×...×(1-1/pₘ)。其中,p₁,…,pₘ,是 N 的所有质因数。
【例如, 由于 18=2×3²,所以 φ(18)=18×(1-1/2)×(1-1/3)=6(表示 1~18 中与 18 互质的正整数有 1,5,7,11,13,17 等 6 个)。详见:https://blog.csdn.net/hnjzsyjyj/article/details/148135689】

● 欧拉函数性质‌
(1)
若p是质数,φ(p)=p-1
例如,φ(5)‌=5-1=4(表示 1~5 中与 5 互质的正整数有 1,2,3,4 等 4 个)。
(2)
若n=pᵏ,φ(pᵏ)=pᵏ-pᵏ⁻¹
例如,φ(8)‌=2³-2²=8-4=4(表示 1~8 中与 8 互质的正整数有 1,3,5,7 等 4 个)
(3)积性函数:
当 a,b 互质时,φ(ab)=φ(a)φ(b)
例如,φ(10)=φ(2)×φ(5)=1×4=4(表示 1~10 中与 10 互质的正整数有 1,3,7,9 等 4 个)
(4)通用计算公式:
φ(N)=N×(1-1/p₁)×(1-1/p₂)×...×(1-1/pₘ)。其中,p₁,…,pₘ,是 N 的所有质因数。

【算法代码】

#include <bits/stdc++.h>
using namespace std;const int maxn=105;
int a[maxn];int oula(int x) {int ans=x;for(int i=2; i*i<=x; i++) {if(x%i==0) {ans=ans/i*(i-1);while(x%i==0) x/=i;}}if(x>1) ans=ans/x*(x-1);return ans;
}int main() {int n;cin>>n;for(int i=1; i<=n; i++) {cin>>a[i];cout<<oula(a[i])<<endl;}return 0;
}/*
in:
3
3 6 8out:
2
2
4
*/



【参考文献】
https://blog.csdn.net/hnjzsyjyj/article/details/148159326
https://blog.csdn.net/hnjzsyjyj/article/details/148135689



 

相关文章:

  • UG903 (v2024.2)的中文版
  • 计算机视觉(CV)中的视觉定位与外观检测技术解析
  • 2025 最新教程:注册并切换到美区 Apple ID
  • OSS对象存储如何避免被攻击恶意刷流量?
  • echarts之折线柱状图
  • 【普及+/提高】洛谷P2613 ——【模板】有理数取余
  • bi平台是什么意思?bi平台具体有什么作用?
  • 【递归、搜索与回溯算法】专题三:穷举vs暴搜vs深搜vs回溯vs剪枝
  • 文章记单词 | 第112篇(六级)
  • 交安公路水运安全员考试的科目有哪些?
  • 从外部平台通过接口获取数据,初始全量同步 和 后续带版本管理的增量同步
  • 常见证书格式区别
  • SOC-ESP32S3部分:9-GPIO输入按键状态读取
  • 提示词工程框架——CO-STAR 框架实战
  • Unity 踩坑记录 UnityWebRequest.Delete(url) downloadHandler 空指针
  • [原理理解] 基于diffusion的超分任务时候遇到的CLIPTokenizer和CLIPTextModel
  • 通过vps命令行向dropbox上传文件
  • lua脚本实战—— Redis并发原子性陷阱
  • 文章记单词 | 第102篇(六级)
  • 深度剖析并发I/O模型select、poll、epoll与IOCP核心机制
  • 建设工程网站贴吧/网站怎么制作免费的
  • wordpress 可以干嘛/seo关键词首页排名
  • 揭阳网站制作维护/seo网站自动发布外链工具
  • wordpress中添加登陆页面/淘宝seo搜索引擎优化
  • 网站建设公司在哪里找资源/淘宝关键词优化怎么弄
  • 阿里云万网网站制作/网站建设的基本流程