CF 1542C C. Strange Function
2021/8/31 23:08:21
本文主要是介绍CF 1542C C. Strange Function,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
https://codeforces.com/problemset/problem/1542/C
题意:
定义\(f(i)\)表示最小的不能整除i的数,求\(\sum_{i=1}^nf(i)\)
若\(f(i)=x\),说明\(1|i,2|i,3|i,……(x-1)|i,x \nmid i\),即\(lcm(1,2,3,……,x-1) | i,x \nmid i\)
所以\(f(i)>=x\)的\(i\)的个数等于 \(n/lcm(1,2,3,……,x-1)\)
\(f(i)=x\)的\(i\)的个数等于 \(n/lcm(1,2,3,……,x-1)\) - \(n/lcm(1,2,3,……,x-1,x)\)
#include<bits/stdc++.h> using namespace std; long long getgcd(long long a,long long b) { return __gcd(a,b); } long long getlcm(long long a,long long b) { return a/getgcd(a,b)*b; } int main() { int T; long long n,lcm; const int mod=1e9+7; int ans; scanf("%d",&T); while(T--) { scanf("%lld",&n); ans=0; lcm=1; for(int i=1;;++i) { lcm=getlcm(i,lcm); if(lcm>n) break; ans+=n/lcm%mod; ans%=mod; } ans=(ans+n)%mod; printf("%d\n",ans); } }
这篇关于CF 1542C C. Strange Function的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-22怎么实现ansible playbook 备份代码中命名包含时间戳功能?-icode9专业技术文章分享
- 2024-11-22ansible 的archive 参数是什么意思?-icode9专业技术文章分享
- 2024-11-22ansible 中怎么只用archive 排除某个目录?-icode9专业技术文章分享
- 2024-11-22exclude_path参数是什么作用?-icode9专业技术文章分享
- 2024-11-22微信开放平台第三方平台什么时候调用数据预拉取和数据周期性更新接口?-icode9专业技术文章分享
- 2024-11-22uniapp 实现聊天消息会话的列表功能怎么实现?-icode9专业技术文章分享
- 2024-11-22在Mac系统上将图片中的文字提取出来有哪些方法?-icode9专业技术文章分享
- 2024-11-22excel 表格中怎么固定一行显示不滚动?-icode9专业技术文章分享
- 2024-11-22怎么将 -rwxr-xr-x 修改为 drwxr-xr-x?-icode9专业技术文章分享
- 2024-11-22在Excel中怎么将小数向上取整到最接近的整数?-icode9专业技术文章分享