1062 最简分数(JAVA)
一个分数一般写成两个整数相除的形式:N/M,其中 M 不为0。最简分数是指分子和分母没有公约数的分数表示形式。
现给定两个不相等的正分数 N1/M1 和 N2/M2,要求你按从小到大的顺序列出它们之间分母为 K 的最简分数。
输入格式:
输入在一行中按 N/M 的格式给出两个正分数,随后是一个正整数分母 K,其间以空格分隔。题目保证给出的所有整数都不超过 1000。
输出格式:
在一行中按 N/M 的格式列出两个给定分数之间分母为 K 的所有最简分数,按从小到大的顺序,其间以 1 个空格分隔。行首尾不得有多余空格。题目保证至少有 1 个输出。
样例:">输入样例:
7/18 13/20 12
输出样例:
5/12 7/12
代码实现:
import java.io.*;
import java.util.ArrayList;/*** @author yx* @date 2022-07-23 18:19*/
public class Main {static PrintWriter out=new PrintWriter(System.out);static BufferedReader ins=new BufferedReader(new InputStreamReader(System.in));static StreamTokenizer in=new StreamTokenizer(ins);public static void main(String[] args) throws IOException {
// System.out.println(gcd(3,7));String[] split=ins.readLine().split(" ");String[] split1=split[0].split("/");String[] split2=split[1].split("/");double a1=(Double.parseDouble(split1[0])/Double.parseDouble(split1[1]));double a2=(Double.parseDouble(split2[0])/Double.parseDouble(split2[1]));double K=Double.parseDouble(split[2]);double max=Math.max(a1,a2);double min=Math.min(a1,a2);boolean flag=false;for (int i = 0; i < (int) K; i++) {if (gcd(i, (int) K) == 1) {/*注意这个地方是<和>不是<=和>=*/if (i / K > min && i / K < max && flag) {System.out.print(" " + i + "/" + (int)K);}if (i / K > min && i / K < max && !flag) {System.out.print(i + "/" + (int) K);flag = true;}}}}static int gcd(int m,int n){return n==0?m:gcd(n,m%n);}
}
1062 最简分数(JAVA)相关推荐
- 1062最简分数c语言,1062 最简分数 (20分)C语言
一个分数一般写成两个整数相除的形式:N/M,其中 M 不为0.最简分数是指分子和分母没有公约数的分数表示形式. 现给定两个不相等的正分数 N1/M1和 N2/M2,要求你按从小到大的顺序列出它们之间 ...
- 1062. 最简分数(20)
1062. 最简分数(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 一个分数一般写成两个整数相除的形式: ...
- C++学习之路 | PTA乙级—— 1062 最简分数 (20 分)(精简)
1062 最简分数 (20 分) 一个分数一般写成两个整数相除的形式:N/M,其中 M 不为0.最简分数是指分子和分母没有公约数的分数表示形式. 现给定两个不相等的正分数 N 1 /M 1 ...
- 1062. 最简分数(20)-PAT乙级真题
1062. 最简分数(20) 一个分数一般写成两个整数相除的形式:N/M,其中M不为0.最简分数是指分子和分母没有公约数的分数表示形式. 现给定两个不相等的正分数 N1/M1 和 N2/M2,要求你按 ...
- PAT (Basic Level) Practise (中文)1062. 最简分数(20)
1062. 最简分数(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 一个分数一般写成两个整数相除的形式: ...
- PAT Basic level 1062 最简分数 (20分)
1062 最简分数 (20分) 一个分数一般写成两个整数相除的形式:N/M,其中 M 不为0.最简分数是指分子和分母没有公约数的分数表示形式. 现给定两个不相等的正分数 N1 /M1和 N2/M2 , ...
- 1062 最简分数(PAT乙级 C++)
题目 一个分数一般写成两个整数相除的形式:N/M,其中 M 不为0.最简分数是指分子和分母没有公约数的分数表示形式. 现给定两个不相等的正分数 N1/M1 和 N2/M2 ,要求你按从小 ...
- PAT-乙级-1062 最简分数
一个分数一般写成两个整数相除的形式:N/M,其中 M 不为0. 最简分数是指分子和分母没有公约数的分数表示形式. 现给定两个不相等的正分数N1/M1 和 N2/M2,要求你按从 ...
- PAT乙级 1062 最简分数 (20 分)
一个分数一般写成两个整数相除的形式:N/M,其中 M 不为0.最简分数是指分子和分母没有公约数的分数表示形式. 现给定两个不相等的正分数 N1/M1和 N2/M2,要求你按从小到大的顺序列出它们之间分 ...
最新文章
- angular2 学习笔记 ( Http 请求)
- 用Java编写第一个区块链(二)
- .Net IOC框架入门之三 Autofac
- 0322 第一天 心得体会
- python getattr_来一点Python面向对象第一级进阶的东西
- 相机标定(三) —— 畸变校正
- 添加dubbo xsd的支持
- gtest测试框架使用详解_测试框架TestNG使用介绍
- C++游戏入门书籍推荐
- mysql常用系统函数归类
- #pragma onece
- tcp总结与简单实现
- php最基础的也是其最容易出错的地方
- MATLAB图像处理学习日记之__图像的K-means均值法与局部阈值和迭代式阈值分割法算法——整理资源汇总
- 阿里巴巴全资收购中国网络配送平台饿了么
- C程序设计第五版谭浩强课后答案 第八章习题答案
- 学计算机r7000和y7000哪个好,联想拯救者r7000p和y7000p哪个好-联想拯救者r7000p和y7000p评测对比...
- MP中的条件更新操作
- [CIKM 2019]Balance in Signed Bipartite Networks
- 锐评:泡沫中的token和被冷落的联盟链
热门文章
- [项目] 网易云音乐项目总结
- Arduino接收航模遥控器RC接收机的PWM数据
- win7连接共享“请检查名称的拼写.否则网络可能有问题”
- 外贸特殊付款方式的风险分析及控制
- PyGame “超级玛丽”游戏专题开篇——“变态超级玛丽”的诞生
- 在matlab中find是什么意思,Matlab中find函数的使用说明
- 月薪从11k到44k,一个普通程序员的三年涨薪之路...
- 抖音作品和直播间如何获取更多流量
- 从马云和任正非看创业的试错过程
- 笔记本电脑突然断网,intel wireless AC 9462驱动无法启动