首页 > 其他分享 >The Euler function(欧拉函数)

The Euler function(欧拉函数)

时间:2023-05-19 12:12:36浏览次数:48  
标签:function phi int long Euler 欧拉

Problem Description
The Euler function phi is an important kind of function in number theory, (n) represents the amount of the numbers which are smaller than n and coprime to n, and this function has a lot of beautiful characteristics. Here comes a very easy question: suppose you are given a, b, try to calculate (a)+ (a+1)+….+ (b)

Input
There are several test cases. Each line has two integers a, b (2<a<b<3000000).

Output
Output the result of (a)+ (a+1)+….+ (b)

数学-线性欧拉函数+前缀和

前缀和用long long

点击查看代码
#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N=3e6+10;
int phi[N],p[N/5];
ll s[N];
bool vis[N];
int main()
{
    ios::sync_with_stdio(false);
    cin.tie(0);cout.tie(0);
    int a,b;
    phi[1]=1;s[1]=1;
    int cnt=0;
    for(int i=2;i<N;++i)
    {
    	if(!vis[i]) p[++cnt]=i,phi[i]=i-1;
    	for(int j=1;j<=cnt&&i*p[j]<N;++j)
    	{
    		vis[i*p[j]]=1;
    		if(i%p[j]==0) {phi[i*p[j]]=p[j]*phi[i];break;}
    		phi[i*p[j]]=(p[j]-1)*phi[i];
    	}
    	s[i]=s[i-1]+phi[i];
    }
    while(cin>>a>>b)
    {
    	cout<<s[b]-s[a-1]<<'\n';
    }
    return 0;
}

标签:function,phi,int,long,Euler,欧拉
From: https://www.cnblogs.com/ruoye123456/p/17414764.html

相关文章

  • this.$refs.ref值.toggleRowExpansion is not a function的解决方法
    el-table点击行也能够打开子表,开始搞了个静态(子表)的可以的。但是现次执行这个方法,就报错了。<el-tablev-loading="loading":data="item.steps"style="border-radius:0px!important;"ref="stepTable"......
  • 4大特性看Huawei Cloud EulerOS为开发者带来平滑迁移体验
    摘要:本期《解密HuaweiCloudEulerOS算力释放技术》主题直播中,华为云DTSE技术布道师陆维迪通过剖析传统OS上云面临的性能,安全,弹性等问题,与开发者们分享HuaweiCloudEulerOS(简称“HCEOS”)在提升客户云上使用体验的核心优势和关键技术。本文分享自华为云社区《4大特性看Huawei......
  • openEuler 成功适配 LeapFive InFive Poros 开发板
    近日,openEulerRISC-V23.03创新版本在跃昉科技的Poros开发板上成功运行。openEuler在Poros上适配成功,XFCE桌面启动正常,文件系统、终端模拟器和输入法等相关GUI应用也运行流畅,Chromium浏览器和LibreOffice等应用也得到了支持。目前,图形界面依靠LLVMpipe渲染,后续跃昉......
  • 文档资料多?官方文档怎么找?openEuler文档地图帮你搞定
    前言文档是开发者贡献代码的钥匙,openEuler社区的文档包括发行说明、操作系统安装、虚拟化和容器的使用指导等内容。为方便开发者快速找到所需要的文档资料,openEuler社区上线了文档地图,欢迎大家查阅。地址:https://docs.openeuler.org使用指南左侧主目录以「openEuler的版本选择」为......
  • openEuler RISC-V 成功适配 LicheePi 4A 开发板,推动 RISC-V 生态发展
    近期,RISC-VSIG在LicheePi4A开发板上成功实现了欧拉操作系统的适配。目前,最新版本的openEulerRISC-V23.03V1镜像已在LicheePi4A开发板上可用,这一成果再次展现了openEuler在推动RISC-V生态发展过程中所取得的新突破。下载地址:https://mirror.iscas.ac.cn/openeuler-......
  • 【Azure 应用服务】Azure JS Function 异步方法中执行SQL查询后,Callback函数中日志无
    Warning:Unexpectedcallto'log'onthecontextobjectafterfunctionexecutionhascompleted.Pleasecheckforasynchronouscallsthatarenotawaitedorcallsto'done'madebeforefunctionexecutioncompletes.Th......
  • CF1824D LuoTianyi and the Function & 区间历史和模板
    LuoTianyiandtheFunction:LuoTianyigivesyouanarray\(a\)of\(n\)integersandtheindexbeginsfrom\(1\).Define\(g(i,j)\)asfollows:When\(i\lej\),\(g(i,j)\)isthelargestinteger\(x\)thatsatisfies\(\{a_p:i\lep\le......
  • Python range function All In One
    PythonrangefunctionAllInOnerange函数函数语法range(stop)range(start,stop[,step])参数说明:start:计数从start开始。默认是从0开始。例如range(5)等价于range(0,5)stop:计数到stop结束,但不包括stop。例如:range(0,5)是[0,1,2,3,4]没有......
  • 论文阅读 -- High-speed_function_approximation_using_a_minimax_quadratic_interpol
    SFU设计算法基础Interpolation插值:给定有限点预测附近点的方法算法复现requireMaple代码复现精度与资源referenceHigh-SpeedFunctionApproximationminimaxcoeffAitken(埃特金)逐次插值法|一次插值、二次插值、k次插值FPGA_LUT-based_InterpolationF......
  • You may have an infinite update loop in a component render function
    在组件渲染函数中你可能有一个无限更新的循环这就导致页面一直在加载无限循环下去,没有终止,卡死 在 v-for 循环当中,如果用方法或者计算属性对vm.$data的属性进行操作,理论上,可能因为修改到循环对象,诱发无限循环。此时Vue就会发出警告(并不是真的已经无限循环了) ......