[C++][算法基础]欧拉函数(线性筛)

news/2024/12/1 0:20:09/

给定一个正整数 n,求 1∼n 中每个数的欧拉函数之和。

输入格式

共一行,包含一个整数 n。

输出格式

共一行,包含一个整数,表示 1∼n 中每个数的欧拉函数之和。

数据范围

1≤n≤10^{6}

输入样例:
6
输出样例:
12

代码:

#include<iostream>
using namespace std;const int N = 1000010;
int n,cnt;
int phi[N],att[N],Primes[N];long long Get_eulers(int n){long long res = 0;phi[1] = 1;for(int i = 2; i <= n;i ++){if(att[i] == 0){Primes[cnt] = i;cnt++;phi[i] = i - 1;}for(int j = 0;Primes[j] <= n / i;j++){att[i * Primes[j]] = 1;if(i % Primes[j] == 0){phi[i * Primes[j]] = phi[i] * Primes[j];break;}else{phi[i * Primes[j]] = phi[i] * (Primes[j] - 1);}}}for(int i = 0;i <= n;i ++){res += phi[i];}return res;
}int main(){cin>>n;long long ans = Get_eulers(n);cout<<ans<<endl;return 0;
}

 


http://www.ppmy.cn/news/1425412.html

相关文章

FPGA开发之状态机设计

状态机是许多数字系统的核心部件&#xff0c;是一类重要的时序逻辑电路。通常包括三个部分&#xff1a; 一是下一个状态的逻辑电路&#xff0c; 二是存储状态机当前状态的时序逻辑电路&#xff0c; 三是输出组合逻辑电路。 通常&#xff0c;状态机的状态数量有限&#xff0c;称…

Mac使用Idea新手常用快捷键

Mac使用Idea新手常用快捷键 前言常用指令1、选中多个文件&#xff0c;不连续2、点进去查看某个类的代码3、复制某个类的全类名4、鼠标滚轮选中多行&#xff0c;然后选中这些行上同一列光标所在的单词 前言 入职新公司后用的是mac&#xff0c;从windows切换到mac&#xff0c;一…

安卓手机APP开发__媒体开发部分__直播流

安卓手机APP开发__媒体开发部分__直播流 目录 概述 检查和监控直播的播放 在直播流中的定位查找 直播播放的用户界面 配置直播播放的参数 播放速度调整 定制播放速度的调整算法 直播窗口背后的异常和ERROR_CODE_BEHIND_LIVE_WINDOW 概述 ExoPlayer没有任何特殊配置的…

PCB---Editor 输出光绘

选择一个层*&#xff08;正面走线层和过孔&#xff09; 选择一个文件复制命名&#xff08;最后删除初始的那2个文件&#xff0c;下图是删除过后的&#xff09;&#xff1a; 隐藏全部开始重复以上步骤&#xff1a; 大致的层&#xff1a; Art01&#xff08;正面走线层和过孔&…

ceph osd分组

一、前言 使用分组可以更好的管理osd&#xff0c;将不同类型的磁盘&#xff0c;分到不同的组中&#xff0c;例如hhd类型的osd分配到hhd组&#xff0c;ssd类型的osd分配到ssd组&#xff0c;将io要求不高的分配到hhd组做存储&#xff0c;io要求高的分配到ssd组做存储 二、配置 查…

Unity 中(提示框Tweet)

using UnityEngine; using UnityEngine.UI; using DG.Tweening; using System; public class Message : MonoBehaviour {public float dropDuration 0.5f; // 掉落持续时间public float persisterDuration 1f; // 持续显示时间public float dorpHeight;public static Message…

endnote21从安装到使用!文献引用!Mac版

视频学习和资源获取 新建库 选择上方导航栏处的File下的New 软件 软件界面可以分成四个部分 2是个人图书馆 3是对某一分类中文献的展示 最右侧是对具体一篇文献的摘要、编辑以及PDF 有回形针标志意味着这篇有全文&#xff0c;也就是有pdf 如果没有回形针代表它只有引文信…

@CrossOrigin的使用

CrossOrigin的使用 1.使用场景2.用法3.示例3.1 标注在方法上3.2 标注在类上 3.属性配置 1.使用场景 前后端分离应用&#xff1a;当前端应用和后端服务部署在不同的域或端口上时&#xff0c;前端应用尝试向后端服务发起请求时&#xff0c;可能会遇到同源策略的限制。这时&#…