[codeplus 11月月赛]T1 jogging
来源:互联网 发布:周琦和姚明cba数据 编辑:程序博客网 时间:2024/05/18 03:06
传送门
大水题。。。
就是算三个数的lcm
然后我为了防爆,就用了质因数分解。。
代码:
#include<cstdio>#include<cstring>#include<iostream>#include<cmath>#include<algorithm>#include<cstdlib>#define ll long longusing namespace std;inline int read(){ int x=0;char ch=' ';int f=1; while(ch!='-'&&(ch<'0'||ch>'9'))ch=getchar(); if(ch=='-')f=-1,ch=getchar(); while(ch>='0'&&ch<='9')x=(x<<3)+(x<<1)+(ch^48),ch=getchar(); return x*f;}const int N=1e5+5;int a,b,c,cnt;int vis[N],prime[N],e[N];inline void init(int n){ for(int i=2;i<=n;i++){ if(!vis[i])prime[++cnt]=i; for(int j=1;j<=cnt&&i*prime[j]<=n;j++){ vis[i*prime[j]]=1; if(i%prime[j]==0)break; } }}inline void work(int x){ for(int j=1;j<=cnt;j++){ int num=0; int tmp=x; while(tmp%prime[j]==0){ num++; tmp/=prime[j]; } e[j]=max(e[j],num); }}inline ll ksm(ll a,ll b){ ll ans=1; while(b){ if(b&1)ans*=a; a*=a; b>>=1; } return ans;}int main(){ a=read();b=read();c=read(); int n=max(max(a,b),c); init(n);work(a);work(b);work(c); ll ans=1; for(int j=1;j<=cnt;j++){ ans*=ksm(prime[j],e[j]); } printf("%lld",ans); return 0;}
阅读全文
0 0
- [codeplus 11月月赛]T1 jogging
- [codeplus 11月月赛]T2 timber
- 洛谷11月月赛 T1 高兴的津津
- Luogu11月月赛T1 高兴的津津
- 洛谷10月月赛R1-T1-一道中档题 Factorial
- 洛谷10月月赛R2·浴谷八连测R3 T1
- CodePlus 2017 11 月赛 Div. 2
- CodePlus 2017 11 月赛 div2 题解
- jogging
- 洛谷10月月赛R1·浴谷八连测R1·提高组 T1
- 洛谷10月月赛R2-T1-浮游大陆的68号岛
- 洛谷11月月赛总结
- [DP] 「CodePlus 2017 11 月赛」找爸爸
- [贪心]「CodePlus 2017 11 月赛」可做题
- 「CodePlus 2017 11 月赛」找爸爸
- 「CodePlus 2017 11 月赛」可做题
- #6249. 「CodePlus 2017 11 月赛」汀博尔 二分
- 洛谷10月月赛R1·浴谷八连测R1·提高组 SAC E#1 -T1 一道中档题 Factorial
- 点击按钮连续滚动【适用于广告栏等】
- LeetCode--First Missing Positive (第一个丢失的正整数)Python
- CORS通信
- 漫反射着色
- fridge11_27
- [codeplus 11月月赛]T1 jogging
- malloc与realloc的区别
- Servlet中forward和redirect的区别
- Eclipse+ Selenium+ TestNG + Maven安装
- 迅速学习seo相关教程的高效率方法
- 使用Django+MySQL+Apache+Linux创建简单的博客
- 表格应用相关----增删改查功能
- 备份Windows密钥,重装后免费激活系统教程
- final关键字的一些思考