7832:最接近的分数

简介: 总时间限制: 1000ms内存限制: 65536kB描述分母不超过 N 且 小于 A/B 的最大最简分数是多少?输入三个正整数N,A,B,相邻两个数之间用单个空格隔开。1 =1;B--)18 for(A=1;;A++)19 {20 ...
总时间限制: 1000ms内存限制: 65536kB
描述

分母不超过 N 且 小于 A/B 的最大最简分数是多少?

输入
三个正整数N,A,B,相邻两个数之间用单个空格隔开。1 <= A < B < N <= 1000。
输出
两个正整数,分别是所求分数的分子和分母,中间用单个空格隔开。
样例输入
100 7 13
样例输出
50 93

算法分析:枚举法

 1 #include<cstdio>
 2 double commom(double x,double y)
 3 {
 4     double m=x,n=y,r;
 5     do
 6     {
 7         r=int(m)%int(n);
 8         m=n;
 9         n=r;
10     }while(r!=0);
11     return m;
12 }
13 int main()
14 {
15     double sum,a,b,n,i,A,B,max=0,p,q;
16     scanf("%lf%lf%lf",&n,&a,&b);
17     for(B=n;B>=1;B--)
18         for(A=1;;A++)
19         {
20             if(A/B>a/b) break;
21             if(A/B>max&&A/B<a/b)
22             {
23                 max=A/B;
24                 p=A/commom(A,B);
25                 q=B/commom(A,B);
26             }
27         }
28     printf("%g %g",p,q);
29     return 0;
30 }

另一个AC代码,参考链接:http://blog.csdn.net/tigerisland45/article/details/71157783

 1 #include <iostream>  
 2 using namespace std;    
 3 int main()  
 4 {  
 5     int n, a, b, p, q, x, y;  
 6   
 7     scanf("%d%d%d", &n, &a, &b);  
 8   
 9     // 分子x从1-n,分母y从n-1;结果p/q,开始时1/n(最小值)  
10     p = 1, q = n;  
11     for(x=1; x<=n; x++)  
12         for(y=n; y>=1; y--)  
13             if(b * x < a * y && x * q > p * y)  
14                 p = x, q = y;  
15   
16     printf("%d %d\n", p, q);  
17   
18     return 0;  
19 }  

用穷举法找满足条件的最大分数。

 

相关文章
|
SQL 监控 物联网
嵌入式工程师学习路线(软件类)
嵌入式工程师学习路线(软件类)
1744 1
|
存储 C语言
C语言程序设计——设计一个学生管理系统(完美运行的程序(●‘◡‘●))
C语言程序设计——设计一个学生管理系统(完美运行的程序(●‘◡‘●))
C语言程序设计——设计一个学生管理系统(完美运行的程序(●‘◡‘●))
|
10天前
|
存储 关系型数据库 分布式数据库
PostgreSQL 18 发布,快来 PolarDB 尝鲜!
PostgreSQL 18 发布,PolarDB for PostgreSQL 全面兼容。新版本支持异步I/O、UUIDv7、虚拟生成列、逻辑复制增强及OAuth认证,显著提升性能与安全。PolarDB-PG 18 支持存算分离架构,融合海量弹性存储与极致计算性能,搭配丰富插件生态,为企业提供高效、稳定、灵活的云数据库解决方案,助力企业数字化转型如虎添翼!
|
9天前
|
存储 人工智能 Java
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
本文讲解 Prompt 基本概念与 10 个优化技巧,结合学术分析 AI 应用的需求分析、设计方案,介绍 Spring AI 中 ChatClient 及 Advisors 的使用。
411 130
AI 超级智能体全栈项目阶段二:Prompt 优化技巧与学术分析 AI 应用开发实现上下文联系多轮对话
|
3天前
|
存储 安全 前端开发
如何将加密和解密函数应用到实际项目中?
如何将加密和解密函数应用到实际项目中?
199 138
|
9天前
|
人工智能 Java API
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
本文介绍AI大模型的核心概念、分类及开发者学习路径,重点讲解如何选择与接入大模型。项目基于Spring Boot,使用阿里云灵积模型(Qwen-Plus),对比SDK、HTTP、Spring AI和LangChain4j四种接入方式,助力开发者高效构建AI应用。
380 122
AI 超级智能体全栈项目阶段一:AI大模型概述、选型、项目初始化以及基于阿里云灵积模型 Qwen-Plus实现模型接入四种方式(SDK/HTTP/SpringAI/langchain4j)
|
3天前
|
存储 JSON 安全
加密和解密函数的具体实现代码
加密和解密函数的具体实现代码
198 136
|
21天前
|
弹性计算 关系型数据库 微服务
基于 Docker 与 Kubernetes(K3s)的微服务:阿里云生产环境扩容实践
在微服务架构中,如何实现“稳定扩容”与“成本可控”是企业面临的核心挑战。本文结合 Python FastAPI 微服务实战,详解如何基于阿里云基础设施,利用 Docker 封装服务、K3s 实现容器编排,构建生产级微服务架构。内容涵盖容器构建、集群部署、自动扩缩容、可观测性等关键环节,适配阿里云资源特性与服务生态,助力企业打造低成本、高可靠、易扩展的微服务解决方案。
1355 8