题解 P4057 【[Code+#1]晨跑】

rui_er

2019-12-06 20:55:57

Solution

# 十年OI一场空,不开long long…… 一开始没开ll被卡了好久,直到今天我看向了数据范围…… 欧式gcd: ```cpp ll gcd(ll a, ll b) { return b==0?a:gcd(b,a%b); } ``` lcm: ```cpp ll lcm(ll a, ll b) { return a/gcd(a,b)*b; } ``` 三个数的lcm就先求两个的lcm,再求下一个,即: ```cpp lcm(lcm(a,b),c); ``` 完整代码: ```cpp #include <iostream> using namespace std; #define ll long long ll gcd(ll a, ll b) { return b==0?a:gcd(b,a%b); } ll lcm(ll a, ll b) { return a/gcd(a,b)*b; } int main() { ll a, b, c; cin>>a>>b>>c; cout<<lcm(lcm(a,b),c)<<endl; return 0; } ```