线性筛求莫比乌斯反演函数+分块+前缀和
来源:互联网 发布:mac开机黑屏 编辑:程序博客网 时间:2024/06/05 13:21
#define maxn 1000100bool v[maxn];int prime[maxn],mu[maxn],sum[maxn];void Moblus(){ memset(v,false,sizeof(v)); mu[1]=1; sum[1]=1; sum[0]=0; int tot=0; for(int i=2;i<=maxn;i++) { if(!v[i]){ prime[tot++]=i; mu[i]=-1; } for(int j=0;j<tot;j++){ if(i*prime[j]>maxn) break; v[i*prime[j]]=true; if(i%prime[j]==0){ mu[i*prime[j]]=0; break; }else{ mu[i*prime[j]]=-mu[i]; } } sum[i]=sum[i-1]+mu[i]; }}int main(){ int t,n; Moblus(); scanf("%d",&t); while(t--){ scanf("%d",&n); LL ans=3; for(int i=1,last;i<=n;i=last+1){//注意i的跨度 last=n/(n/i); ans+=(LL)(sum[last]-sum[i-1])*(n/i)*(n/i)*((n/i)+3);//用sum[last]-sum[i-1]去代替原来的mu[i]。 } printf("%lld\n",ans); } return 0;}
0 0
- 线性筛求莫比乌斯反演函数+分块+前缀和
- 【BZOJ2301】【HAOI2011】Problem b 莫比乌斯反演+分块+前缀和
- BZOJ 2301 - 莫比乌斯反演 + 前缀和 + 分块计算
- SPOJ7001 Visible Lattice Points 莫比乌斯反演+分块+前缀和
- SPOJ4491 Primes in GCD Table 莫比乌斯反演+分块+前缀和
- 【bzoj3994】[SDOI2015]约数个数和 线性筛法+莫比乌斯反演+数论分块
- HDU 5608 莫比乌斯反演 + 莫比乌斯函数前缀和
- bzoj 2301 -莫比乌斯函数反演+分块优化
- NKOJ 4040 (CQOI 2017) 小Q的表格(莫比乌斯反演+分块+递推+线性筛/欧拉函数+分块+线性筛)
- [莫比乌斯反演 积性函数前缀和] BZOJ 2693 jzptab
- [莫比乌斯反演 积性函数前缀和] 51Nod 1190 最小公倍数之和 V2
- CIA3 Sometimes Naive(莫比乌斯反演+积性函数前缀和)
- HDU 6053 TrickGCD(莫比乌斯反演+前缀和)
- hdu4676 ------麦比乌斯反演&&分块
- 【bzoj2301】[HAOI2011]Problem b 莫比乌斯反演+线性筛法+数论分块
- 【bzoj2820】YY的GCD 线性筛法+莫比乌斯反演+数论分块
- 【bzoj3529】[Sdoi2014]数表 线性筛法+树状数组+莫比乌斯反演+数论分块
- hdu 4746 Mophues (莫比乌斯反演 + 分块+线性筛)
- 对list进行排序
- jsp页面正文中的标签
- 【leetcode】62. Unique Paths
- CentOS7 配置YUM服务器和客户端
- HEVC标准概览(三)高层语法
- 线性筛求莫比乌斯反演函数+分块+前缀和
- BigInsights金刚钻之BigSheets: 零编程!处理海量数据
- 11Listener和Filter
- centos使用varnish实现网站动静分离
- ActiveMQ入门实例
- Responder一点也不神秘————iOS用户响应者链完全剖析
- 12EL表达式 C标签
- C# 接口的隐式与显示实现
- java poi导出excel,合并单元格