HDU 1713 相遇周期 LCD LCM 2.1.3
2012-09-15 17:17
316 查看
对于两个最简的分数 a / b, c / d 把他们两个的最小公倍数 x / y 也设为一个分数形式,那么这个 x 一定能够整除 a , c, y 一定能够被 b , d整除。那么要求得最小公倍数,那么肯定是分子尽量小,即
a , c 的最小公倍数, 分母尽量大, 即 b , d 的最大公约数。
求一组分数的最小公倍数的方法(1) 先将各个分数化为a/b的形式(假分数 或真分数形式)
(2) 用各个分数的分母的最大公因数作所求最小公倍数的分母
(3) 用各个分数的分子的最小公倍数数作所求最小公倍数的分
#include <stdio.h> __int64 gcd(__int64 x, __int64 y) { if(y == 0) return x; else gcd(y, x%y); } __int64 lcm(__int64 x,__int64 y) { return (x*y)/gcd(x,y); } int main() { __int64 a,b,c,d,e,f; __int64 temp; int cas; freopen("abc.txt","r",stdin); scanf("%d",&cas); while(cas--) { scanf("%I64d/%I64d",&a,&b); scanf("%I64d/%I64d",&c,&d); temp = gcd(a,b); a /= temp; b/= temp; temp = gcd(c,d); c /= temp; d/=temp; e = lcm(a,c); f = gcd(b,d); temp = gcd(e,f); e /= temp; f /=temp; if( f==1 ) printf("%I64d\n",e); else printf("%I64d/%I64d\n",e,f); } return 1; }
相关文章推荐
- HDU-1713 相遇周期 LCD LCM
- hdu 1713 相遇周期 (GCD & LCM)
- HDU 1713相遇周期(两个分数的lcm)
- HDU 1713 相遇周期
- HDU 1713 相遇周期(水)
- 2.1.3 相遇周期(lcm、gcd的使用)
- HDU 1713 相遇周期 — 欧几里得算法与最大公约数,最小公倍数
- HDU 1713 相遇周期
- hdu1713相遇周期
- HDU 1713 相遇周期
- HDU1713--相遇周期 HDU(110)
- HDU 1713 最小公倍数与最大公约数的问题 相遇周期
- 关于HDU 1713 相遇周期
- HDU 1713 相遇周期(求两个分数的最小公倍数)
- HDU 1713 相遇周期 (最小公倍数)
- HDU 1713 相遇周期(数学 最大公约数与最小公倍数)
- HDU 1713 -相遇周期
- HDU 1713 相遇周期
- hdu 1713 相遇周期
- HDU 2.1.3 相遇周期