博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
HDU 2503 a/b + c/d(最大公约数与最小公倍数,板子题)
阅读量:6815 次
发布时间:2019-06-26

本文共 1157 字,大约阅读时间需要 3 分钟。

话不多说,日常一水题,水水更健康!┗|`O′|┛ 嗷~~

a/b + c/d

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

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
2
1 2 1 3
4 3 2 3
 
Sample Output
5 6
2 1
 
Source
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2503
分析:就是求最大公约数与最小公倍数,概念详解请参看我的博客!
下面给出AC代码:
1 #include 
2 using namespace std; 3 int gcd(int a,int b) 4 { 5 return b==0?a:gcd(b,a%b); 6 } 7 int main() 8 { 9 int n;10 while(scanf("%d",&n)!=EOF)11 {12 while(n--)13 {14 int a,b,c,d;15 scanf("%d%d%d%d",&a,&b,&c,&d);16 int t=gcd(b,d);//先求出两分母的最大公因式17 int m=b*d/t;//求出两分母的最小公倍数18 int k=m/b*a+m/d*c;//再计算两分子之和19 int x=gcd(k,m);//新的分子与新的分母的比值,先得求出新分子与新分母的最大公因式20 int q1=k/x;//求最简整数比,分别输出即可!21 int q2=m/x;22 printf("%d %d\n",q1,q2);//注意空格的输出23 }24 }25 return 0;26 }

 

 

转载地址:http://akczl.baihongyu.com/

你可能感兴趣的文章
JS 验证
查看>>
【Lua】特性和一些基础语法
查看>>
Jaxb2 实现JavaBean与xml互转
查看>>
shell中exec解析(转)
查看>>
ContentType ,charset和pageEncoding的区别(转)
查看>>
21副GIF动图让你了解各种数学概念(转。太强大了)
查看>>
SQL Server 2008通过LinkServer连接MySQL
查看>>
模板:LCT
查看>>
mysql的数据类型int、bigint、smallint 和 tinyint取值范围 及varchar
查看>>
[android] 手机卫士自定义控件的属性
查看>>
Java自定义类加载器与双亲委派模型
查看>>
jQuery初步
查看>>
过滤器详解
查看>>
程序员必看
查看>>
Outlook 快速邮件清理
查看>>
Java动态代理(一)动态类Proxy的使用
查看>>
菜鸟的 linux 学习笔记 -- OOM
查看>>
Java日志实战及解析
查看>>
添物零基础到大型全栈架构师 不花钱学计算机及编程(预备篇)— 数据库
查看>>
posix多线程有感--线程高级编程(线程调度以及优先级设置)
查看>>