zoukankan      html  css  js  c++  java
  • 1062 最简分数 (20 分)

    一个分数一般写成两个整数相除的形式:N/M,其中 M 不为0。最简分数是指分子和分母没有公约数的分数表示形式。

    现给定两个不相等的正分数 N​1​​/M​1​​ 和 N​2​​/M​2​​,要求你按从小到大的顺序列出它们之间分母为 K 的最简分数。

    输入格式:

    输入在一行中按 N/M 的格式给出两个正分数,随后是一个正整数分母 K,其间以空格分隔。题目保证给出的所有整数都不超过 1000。

    输出格式:

    在一行中按 N/M 的格式列出两个给定分数之间分母为 K 的所有最简分数,按从小到大的顺序,其间以 1 个空格分隔。行首尾不得有多余空格。题目保证至少有 1 个输出。

    输入样例:

    7/18 13/20 12
    

    输出样例:

    5/12 7/12

     题解:主要是两个点,1,在两个分数之间是指严格大于小于,不包含等于,2,分数不是前面小,后边大

    代码:

    #include<cstdio>
    #include<algorithm>
    #include<cstring>
    #include<algorithm>
    
    using namespace std;
    
    int main()
    {
        double N1,M1,N2,M2;
        int K;
        double maxn,minn;
        scanf("%lf/%lf %lf/%lf %d",&N1,&M1,&N2,&M2,&K);
         int flag=0;
         maxn=max(N1/M1,N2/M2);
         minn=min(N1/M1,N2/M2);
    	for(int t=0;t<=K;t++)
        {  
        	double i;
    		i=t*1.0/(K*1.0);
    		if(i>minn&&i<maxn&&__gcd(t,K)==1)
    		{
    			if(flag==0)
    			{
    			printf("%d/%d",t,K);
    			} 
    			else
    			{
    			
    			printf(" %d/%d",t,K);
    		    }
    		    flag=1;
    		 } 
    	} 
        
        return 0;	
    } 
  • 相关阅读:
    1 . CentOS 7的yum更换为国内的阿里云yum源
    0. vagrant+vbox创建centos7虚拟机
    git上传到码云和下载到本地
    spring boot udp或者tcp接收数据
    你好,博客园
    使用firdder抓取APP的包
    初见loadrunner
    sublime快捷键大全
    html中行内元素与块级元素的区别。
    html.css溢出
  • 原文地址:https://www.cnblogs.com/Staceyacm/p/10781974.html
Copyright © 2011-2022 走看看