HDU2503——a/b + c/d
2016-01-21 15:20
453 查看
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
Sample Output
给你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
2 1 2 1 3 4 3 2 3
Sample Output
5 6 2 1
#include<stdio.h> int min(int a,int b) { int i,j; int tmp; if(a<b) { tmp=a; a=b; b=tmp; } i=b; if(a%i==0) return i; j=a%b; return min(i,j); } int main() { int t,i; int a,b,c,d; int e,f; int x; while( ~scanf("%d",&t)) { for(i=0;i<t;i++) { e=f=0; scanf("%d %d %d %d",&a,&b,&c,&d); e=a*d+c*b; f=b*d; x=min(e,f); e=e/x; f=f/x; printf("%d %d\n",e,f); } } return 0; }
相关文章推荐
- eclipse 导入 java项目报错
- Android-语言设置流程分析
- 支付宝的高可用与容灾架构演进zt
- php实现归并排序(二)
- C#获取当前日期时间(转)
- 多列索引
- git简易教程
- 在Linux下安装邮件服务器Qmail(一)
- webview清除缓存
- android 根据控件的ID字符串利用反射获取UI控件
- 使用eclipse生成git的ssh
- ceil/floor/round
- ES6学习——迭代器(Iterators):迭代器接口高级应用
- LeakCanary: Detect all memory leaks!
- 在Vim里使用gtags-cscope
- 如何维护好服务器的安全
- 超级无敌qmail安装大法,详尽之极
- C++中声明类的class与声明结构体的struct关键字详解
- 为 Drupal 7 网站添加自定义CSS
- php整合memcached