Problem L: 最简分式
2017年山科C语言期末考试
Problem L: 最简分式
Description
我们知道,5/3=1+3/5,称等号后面的式子为最简分式。也就是说,在分式中,分子一定要小于分母,而且分子、分母是互质的。请写一个程序,对于用户输入的一个合法分式,输出其约简之后的结果。
Input
输入有多行,每行是“m/n”的格式表示的一个分式,其中m和n都是int类型范围内的正整数。
输入至EOF结束。
Output
输出的行数与输入一致,且每行输出与上述输入一一对应。
如果约简后,分子部分是0,则只输出整数部分。
如果整数部分是0,则按照“j/k”的格式输出;
如果整数部分不是0,则按照“i+j/k” 的格式输出约简后的结果。
其中i、j和k分别是约简后的整数部分、分子部分和分母部分。
Sample Input
100/56
8/4
3/5
Sample Output
1+11/14
2
3/5
ans:
#include<stdio.h>
#include<stdlib.h>int getMin(int a,int b)
{if(a<b)return a;else return b;
}int main()
{int m,n;while(scanf("%d/%d",&m,&n)!=EOF){if(m%n==0){//最简单的情况,直接输出m/nprintf("%d\n",m/n);}else if(m<n){//分子小于分母,分式形式,看是否要化为最简分式int min=getMin(m,n);for(int i=2;i<=min;i++){while(m%i==0&&n%i==0){m/=i;n/=i;}}printf("%d/%d\n",m,n);}else{//分子大于分母,拆分为一个整数加一个分式int len=0;while(m>n){len++;m-=n;}int min=getMin(m,n);for(int i=2;i<=min;i++){while(m%i==0&&n%i==0){m/=i;n/=i;}}printf("%d+%d/%d\n",len,m,n);}}return 0;
}
Problem L: 最简分式相关推荐
- HDU 6343.Problem L. Graph Theory Homework-数学 (2018 Multi-University Training Contest 4 1012)
6343.Problem L. Graph Theory Homework 官方题解: 一篇写的很好的博客: HDU 6343 - Problem L. Graph Theory Homework - ...
- CERC17 Problem L - Lunar Landscape(差分,坐标系)
CERC17 Problem L - Lunar Landscape Solution 如果只有AAA,我们可以简单地使用差分解决. 加入了BBB之后,可以把单位正方形用对角线拆成四个等腰Rt,统计等 ...
- Problem L: 卡拉兹猜想
Problem Description 对任何一个自然数n(n!=0),如果它是偶数,那么就把它砍掉一半:如果它是奇数,就把(3n+1)砍掉一半.这样一直反复砍下去,最后一定在某一步得到n=1. 对于 ...
- 1503 Problem A 最简分式
Description 我们知道,5/3=1+2/3,称等号后面的式子为最简分式.也就是说,在分式中,分子一定要小于分母,而且分子.分母是互质的.请写一个程序,对于用户输入的一个合法分式,输出其约简之 ...
- Problem L 七段显示器显示整数
Problem Description 编写程序,输入一个整数,使用字符模拟七段显示器来输出该数. 计算器.电子手表和其它电子设备经常依靠七段显示器进行数值的输出.为了组成数字,这类设备需要" ...
- Problem L: 定义哺乳动物类Mammal和Dog类
Problem Description 定义哺乳动物类Mammal,再由此派生出狗类Dog,定义一个Dog类的对象 //你的程序将被嵌在这里 int main() { Dog d; ...
- Problem L. Graph Theory Homework
http://acm.hdu.edu.cn/showproblem.php?pid=6343 容易证明 ⌊a⌋+⌊b⌋≥⌊a+b⌋\lfloor \sqrt{a} \rfloor + \lfloor ...
- 11.3 作业 Problem L: 数字统计
Description 给出一些数字,统计出现最多的数字的次数. Input 输入中第一行包含一个N,0 < N <= 500000. 后面N行每行包含一个数字k,0<=k<= ...
- Nwafu-Oj-1444 Problem l C语言实习题七——2.结构体数组的定义与引用
问题 : C语言实习题七--2.结构体数组的定义与引用 时间限制: 1 Sec 内存限制: 128 MB 提交: 4459 解决: 2011 [提交][状态][讨论版] 题目描述 定义一个职工结构 ...
- Problem L 求m到n之和 C语言函数
题目描述 本题要求实现一个计算m~n(m< n)之间所有整数的和的简单函数. 函数接口定义: int sum( int m, int n ); 判测试程序样例:#include <stdi ...
最新文章
- arm开发板放张图片动起来_ARM裸机不能正确显示图片的问题
- linux-centos下源代码安装subversion (svn)
- 如何知道 CPU 是否支持虚拟化技术(VT)
- Visual Studio Team System 2008 安装失败
- Python 37 进程池与线程池 、 协程
- JQuery EasyUI之DataGrid列名和数据列分别设置不同对齐方式(转)
- *printf()格式化串安全漏洞分析(上)
- 在VS2019 C++ 中实现Socket通信,添加ws2_32.lib静态库
- ussd代码大全_USSD查询器app
- BMZCTF misc1
- word自带公式编辑_如何在word中调整公式大小
- 5种主流的移动端广告类型
- 防火墙阻止了IE服务器未响应,ie防火墙如何禁用
- box-sizing属性的的用法
- 【独立站运营】什么是营销转化率?如何提升转化率?
- iMX6UL开发板移植libcurl库
- 洛谷P5594-【XR-4】模拟赛(模拟)
- 红米k30 android版本,红米K30系列机型众多,傻傻分不清楚?看完这篇你就懂了
- 14个PPT资源素材网站,再也不怕做PPT了
- java字节流读取esc_什么是“esc”的VT100转义代码?键盘键本身