问题标题: 酷町堂:6589

0
0
已解决
李宜和
李宜和
高级启示者
高级启示者

6589   吃早饭

经验值:1200 时间限制:1000毫秒

题目描述 Description

小红每天都不吃早饭,她觉得这是一个坏习惯,所以她为了养成能吃早饭的习惯,决定每x天吃一次早饭。通俗的说,如果小红某天早上吃了早饭,他就会休息x-1天不吃早饭,第x天接着吃早饭,以此类推。
小蓝和小绿觉得这是一个好习惯。
于是小蓝每y天吃一次早饭,小绿每z天吃一次早饭。
某天早上他们三个相遇了。把他们这次相遇记为第0天,假设每个人吃早饭的时间段和路线都相同,请你帮他们计算一下下一次三人相遇是第几天。

输入描述 Input Description

输入共一行,包含三个正整数x,y,z,表示小红每隔x天吃一次早饭、小蓝每隔y天吃一次早饭,小绿每隔z天吃一次早饭。

输出描述 Output Description

输出共一行,包含一个正整数n,表示三位同学下次将在第n天相遇。

样例输入 Sample Input

2 3 5

样例输出 Sample Output

30

数据范围及提示 Data Size & Hint

1≤x,y,z≤100000

 

 

 

 

 

WA40分

#pragma GCC optimize(3)
#pragma GCC target("avx")
#pragma GCC optimize("Ofast")
#pragma GCC optimize("inline")
#pragma GCC optimize("-fgcse")
#pragma GCC optimize("-fgcse-lm")
#pragma GCC optimize("-fipa-sra")
#pragma GCC optimize("-ftree-pre")
#pragma GCC optimize("-ftree-vrp")
#pragma GCC optimize("-fpeephole2")
#pragma GCC optimize("-ffast-math")
#pragma GCC optimize("-fsched-spec")
#pragma GCC optimize("unroll-loops")
#pragma GCC optimize("-falign-jumps")
#pragma GCC optimize("-falign-loops")
#pragma GCC optimize("-falign-labels")
#pragma GCC optimize("-fdevirtualize")
#pragma GCC optimize("-fcaller-saves")
#pragma GCC optimize("-fcrossjumping")
#pragma GCC optimize("-fthread-jumps")
#pragma GCC optimize("-funroll-loops")
#pragma GCC optimize("-fwhole-program")
#pragma GCC optimize("-freorder-blocks")
#pragma GCC optimize("-fschedule-insns")
#pragma GCC optimize("inline-functions")
#pragma GCC optimize("-ftree-tail-merge")
#pragma GCC optimize("-fschedule-insns2")
#pragma GCC optimize("-fstrict-aliasing")
#pragma GCC optimize("-fstrict-overflow")
#pragma GCC optimize("-falign-functions")
#pragma GCC optimize("-fcse-skip-blocks")
#pragma GCC optimize("-fcse-follow-jumps")
#pragma GCC optimize("-fsched-interblock")
#pragma GCC optimize("-fpartial-inlining")
#pragma GCC optimize("no-stack-protector")
#pragma GCC optimize("-freorder-functions")
#pragma GCC optimize("-findirect-inlining")
#pragma GCC optimize("-fhoist-adjacent-loads")
#pragma GCC optimize("-frerun-cse-after-loop")
#pragma GCC optimize("inline-small-functions")
#pragma GCC optimize("-finline-small-functions")
#pragma GCC optimize("-ftree-switch-conversion")
#pragma GCC optimize("-foptimize-sibling-calls")
#pragma GCC optimize("-fexpensive-optimizations")
#pragma GCC optimize("-funsafe-loop-optimizations")
#pragma GCC optimize("inline-functions-called-once")
#pragma GCC optimize("-fdelete-null-pointer-checks")
#pragma GCC optimize(2)
#include <bits/stdc++.h>
using namespace std;
long long n,m,x;    
int main(){ 
    cin>>n>>m>>x;
    cout<<n*m*x;
    return 0;
}

求思路


0
已采纳
王文博
王文博
缔造者之神
缔造者之神

核心:

long long d=a/__gcd(a,b)*b/__gcd(a/__gcd(a,b)*b,c)*c;

望采纳!

0
0
李志皓
李志皓
初级守护
初级守护

头文件
using namespace std;
long long x,y,z;
long long gcd(long long a,long long b){
   定义(long long ) r;
    while(a%b!=0){
        r=a%b;
        a=b;
        b=r;
    }
    return b;
}
long long bei(long long a,long long b,long long c){
    long long t=a*b/gcd(a,b);
    return t*c/(gcd(t,c));
}
int main(){
    输入>>x>>y>>z;
    输出<<bei(x,y,z);
    return 0;
}

求采纳,谢谢

0
潘艺博
潘艺博
初级天翼
初级天翼

公式法:最小公倍=a*b/gcd(a,b)(gcd()-->最大公因函数)

知道这个还不好办吗

思路:

先求两个数的最小公倍,用变量存一下,(比如t=a*b/gcd(a,b))再求t和第三个数的最小公倍

函数:

定义函数gcd(求最大公因)(你会写吧,不会的话翻笔记)

再定义函数bei(求最小公倍)(长整形a、b、c),函数里定义长整形t=(公式法,上面写过了),返回t和c的最小公倍

主函数里的不用我说吧,输出bei(a,b,c)

望采纳~

0
我要回答