同向行驶

来源:互联网 发布:淘宝袜子详情页面模板 编辑:程序博客网 时间:2024/06/08 15:37

1.题目:

 Problem Description

甲、乙、丙三辆汽车在环形马路上同向行驶,甲车行一周要a分钟,乙车行一周要b分钟,丙车行一周要c分钟,三辆汽车同时从同一个起点出发,至少要过多久这三辆汽车才能同时又在起点相遇。

 

 Input

输入包含多组测试数据,每组只有一行,分别为a,b,c三个整数
 

 Output

对于每个测试用例,输出相遇所需的时间,每个实例输出一行。
 

 Sample Input

36 30 4810 14 18

 

 Sample Output

720630

 

 Author

HLJ

 

 

2.注意事项:

    这道题有个很坑的地方,就是数据类型超出int的,所以不能用int做,要用__int64,才能过。

 

 

3.参考代码:

 

#include <stdio.h>__int64 gcd(__int64 a,__int64 b){   ///求两个数的最大公约数__int64 t;if(a<b)   ///比较,大的数放在前面{t=a;a=b;b=t;}if(a%b==0)return b;elsereturn gcd(b,a%b);   ///递归掉用}int main(){__int64 a,b,c,x,y,z,w;while(~scanf("%I64d %I64d %I64d",&a,&b,&c)){x=gcd(a,b);y=a*b/x;   ///两个数的最小公倍数等于这两个数的乘积再除以这两个数的最大公约数z=gcd(y,c);w=y*c/z;printf("%I64d\n",w);}return 0;}


 

 

 

 

原创粉丝点击