明明是相遇问题,搞什么莫名其妙的最小公倍数?
题目链接 HDU 1713 相遇周期.
题目:
分析:
从题目就可以看出来
26501/6335 :就是转26501圈要6335天
18468/42 :就是转18468圈要42天
第一个差不多一天跑十圈
第二个差不多一天跑四百多圈
答案告诉我相遇周期一千多万天????
反正我是这么解的,还解不出来
AC代码
迫于淫威还是煞有介事的写了。。。
package Two;
import java.util.Scanner;
public class T1713 {
public static long gcd(long m, long n) {
if (n == 0) return m;
else return gcd(n, m % n);
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int t = sc.nextInt();
while (t-->0) {
String s1 = sc.next();
String ss1[] = s1.split("/");
String s2 = sc.next();
String ss2[] = s2.split("/");
long q1 = Long.valueOf(ss1[0]);
long t1 = Long.valueOf(ss1[1]);
long a=gcd(q1,t1);
q1/=a;
t1/=a;
long q2 = Long.valueOf(ss2[0]);
long t2 = Long.valueOf(ss2[1]);
long b=gcd(q2,t2);
q2/=b;
t2/=b;
long ans=q1*q2/gcd(q1,q2);
long time = gcd(t1,t2);
System.out.println(ans + (time == 1 ? "": ("/" + time)));
}
}
}