hdu 2503

来源:互联网 发布:禁止 网络医疗平台 编辑:程序博客网 时间:2024/04/30 03:17

a/b + c/d

Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 5630    Accepted Submission(s): 3236


Problem Description
给你2个分数,求他们的和,并要求和为最简形式。
 

Input
输入首先包含一个正整数T(T<=1000),表示有T组测试数据,然后是T行数据,每行包含四个正整数a,b,c,d(0<a,b,c,d<1000),表示两个分数a/b 和 c/d。
 

Output
对于每组测试数据,输出两个整数e和f,表示a/b + c/d的最简化结果是e/f,每组输出占一行。
 

Sample Input
21 2 1 34 3 2 3
 

Sample Output
5 62 1
 

Source
《ACM程序设计》短学期考试_软件工程及其他专业
 

Recommend
lcy


#include<stdio.h>int GCD(int a, int b){int t;if(a < b){t = a;a = b;b = t;}if(a % b == 0)return b;elsereturn GCD(b, a % b);}int main(){int t, a, b, c, d, e, f, gcd;scanf("%d", &t);while(t--){scanf("%d %d %d %d", &a, &b, &c, &d);e = a * d + b * c;f = b * d;gcd = GCD(e, f);printf("%d %d\n", e / gcd, f / gcd);}return 0;}

原创粉丝点击