问题标题: 酷町堂: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

代码:

#include<bits/stdc++.h>

using namespace std;

int main(){

    int a,b,c;

    cin>>a>>b>>c;

    for(int i=1;i<=0x3f3f3f3f;i++){

if(i%a==0&&i%b==0&&i%c==0){

cout<<i;

break;

}

}

    return 0;

}

TE0

这只是其中之一,其他的就先不写了

让我康康,我错了多少次

1,2......漂亮,错了5次

所以,求指点,谢谢


1
已采纳
张展嘉
张展嘉
新手天翼
新手天翼
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)); 
} 

剩下自己想

0
我要回答