question:相遇周期

思路:

首先将两个分数化为最简形式(也就是分子分母同时除以最大公约数)

然后题意是要求两个分数的最小公倍数

借助以下两个公式,就可以求出结果

1.最小公倍数*最大公约数 = a*b

2.两个分数的最小公倍数:分子为两个分子的最小公倍数,分母为两个分母的最大公约数(前提是分数是最简形式)

注:最后结果要判断一下,如果分子可以被分母整除,则只要输出整除的结果,否则输出拼接字符串

source code:

package hduoj;

import java.util.Scanner;

/**
* 最小公倍数*最大公约数 = a*b
* 两个分数的最小公倍数:分子为两个分子的最小公倍数,分母为两个分母的最大公约数(前提是分数是最简形式
*/
public class hdoj_1713 {
static long gcd(long a,long b){
if(b==0) return a;
return(gcd(b,a%b));
} public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int count = Integer.parseInt(sc.next());
while(count--!=0){
String the_first = sc.next();
String the_last = sc.next();
long the_first_numberator = Integer.parseInt(the_first.split("/")[0]);
long the_first_denominator = Integer.parseInt(the_first.split("/")[1]);
long gcd_1 = gcd(the_first_numberator,the_first_denominator);
the_first_numberator/=gcd_1;
the_first_denominator/=gcd_1; long the_last_numberator = Integer.parseInt(the_last.split("/")[0]);
long the_last_denominator = Integer.parseInt(the_last.split("/")[1]);
long gcd_2 = gcd(the_last_numberator,the_last_denominator);
the_last_numberator/=gcd_2;
the_last_denominator/=gcd_2; long gcd_3 = gcd(the_first_numberator,the_last_numberator); long the_result_numberator = the_first_numberator/gcd_3*the_last_numberator;
long the_result_denominator = gcd(the_first_denominator,the_last_denominator);
if(the_first_numberator%the_result_denominator!=0)
System.out.println(the_result_numberator+"/"+the_result_denominator);
else
System.out.println(the_result_numberator/the_result_denominator);
}
}
}

思路是从其他博主哪里学习来的,贴上链接:

https://www.cnblogs.com/William-xh/p/7203232.html?utm_source=itdadao&utm_medium=referral

代码已经ac

希望对大家有所帮助

以上

杭电oj_1713——相遇周期(java实现)的更多相关文章

  1. 杭电oj2093题,Java版

    杭电2093题,Java版 虽然不难但很麻烦. import java.util.ArrayList; import java.util.Collections; import java.util.L ...

  2. 杭电oj————2057(java)

    question:A+ B again 思路:额,没啥思路/捂脸,用java的long包里的方法,很简单,只是有几次WA,有几点要注意一下 注意:如果数字有加号要删除掉,这里用到了正则表达式“\\+” ...

  3. 杭电acm2059-龟兔赛跑 java

    一看题就知道是动态规划,不过这要看下如何设置变化数组了 先分析这道题:兔子到达终点的时间时固定的,因此只需要考虑乌龟了,乌龟骑电车和骑自行车的时间,然后计算,因为中间有N个充电站,可以看做N个点(到起 ...

  4. 杭电2091空心三角形Java(AC)

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=2091 把三角形写入二维数组里,然后输出出来 注意事项: 1.三角形后面没有空格(每一层的后面) 2.三角形 ...

  5. 杭电1257 dp(java)

    最少拦截系统 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能超过前一发的高度.某天,雷达捕捉到敌国的 ...

  6. 杭电ACM 1713 相遇周期

    相遇周期 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  7. 杭电oj 4004---The Frog Games java解法

    import java.util.Arrays; import java.util.Scanner; //杭电oj 4004 //解题思路:利用二分法查找,即先选取跳跃距离的区间,从最大到最小, // ...

  8. HDU 1713 最小公倍数与最大公约数的问题 相遇周期

    欢迎参加——BestCoder周年纪念赛(高质量题目+多重奖励) 相遇周期 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/ ...

  9. 杭电ACM分类

    杭电ACM分类: 1001 整数求和 水题1002 C语言实验题——两个数比较 水题1003 1.2.3.4.5... 简单题1004 渊子赛马 排序+贪心的方法归并1005 Hero In Maze ...

随机推荐

  1. Goodnotes5

    Goodnotes5 看书做批注 →Goodnotes 可以放大细节,适合留白少的电子书做笔记. 在原来笔记中新添加空白行(选中之后下移) 1.笔记页面可以多页预览 2.选中图形工具可以画直线

  2. Java遍历字符串数组的几种方法

    1. for循环 for(int i = 0; i < fields[].length; i++){ } 2 for each循环 for(String x:fields){ } 3. JDK8 ...

  3. Git 的 .gitignore 配置说明 (C#)

    1.配置语法: 以斜杠“/”开头表示目录: 以星号“*”通配多个字符: 以问号“?”通配单个字符 以方括号“[]”包含单个字符的匹配列表: 以叹号“!”表示不忽略(跟踪)匹配到的文件或目录: 此外,g ...

  4. python3-cookbook笔记:第六章 数据编码和处理

    python3-cookbook中每个小节以问题.解决方案和讨论三个部分探讨了Python3在某类问题中的最优解决方式,或者说是探讨Python3本身的数据结构.函数.类等特性在某类问题上如何更好地使 ...

  5. Socket通讯探索(二)-socket集群

    前面我们在章节“Socket通讯探索(一)”中如何实现一个tcp连接,但是这仅仅是一个最初级的BIO实现,且没有添加线程池,实际应用中很少采用这种方式,因为不得不考虑当大量的Tcp连接建立的时候,服务 ...

  6. JAVA全套资料含视频源码(持续更新~)

    本文旨在免费分享我所搜集到的Java学习资源,所有资源都是通过正规渠道获取,不存在侵权.现在整理分享给有所需要的人. 希望对你们有所帮助!有新增资源我会更新的~大家有好的资源也希望分享,大家互帮互助共 ...

  7. win10 系统到期的解决方案

    本人是 win10 教育版,今天多次提醒 windows 要到期了(烦银).所以网上找到了解决方法,记录一下. 废话:win10 与之前的 windows 版本一样,有家庭版.专业版.企业版等各个版本 ...

  8. 在Windows7中的各种显示模式中桌面图标的尺寸

    在Windows7中的各种显示模式中,图标的尺寸 window7 桌面icon设计尺寸大小桌面图标设计尺寸一般是多少超大图标:256X256大图标:128X128中图标:32X32平铺:32X32列表 ...

  9. jQuery笔记(四)jQuery中的动画

    jQuery最吸引人的地方莫过于能做出绚丽的动画了,也是能极大提高用户体验的地方,这次我们就来一探jQuery中的动画! 一. show()方法和hide()方法 show()方法与hide()方法是 ...

  10. 剑指offer-面试题25-合并两个排序的链表-链表

    /* 题目: 输入两个递增排序的链表,合并这两个链表并使新的链表中的节点依然是递增排序. 返回新链表的头节点. */ /* 思路: 1.返回的链表的头节点为两个链表中头节点数值更小的为链表1. 2.进 ...