博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
7832:最接近的分数
阅读量:4490 次
发布时间:2019-06-08

本文共 1181 字,大约阅读时间需要 3 分钟。

总时间限制: 1000ms内存限制: 65536kB
描述

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

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

算法分析:枚举法

1 #include
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

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

1 #include 
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 }

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

 

转载于:https://www.cnblogs.com/huashanqingzhu/p/7289404.html

你可能感兴趣的文章
HTML学习笔记
查看>>
Jaxb2 转换XML文档
查看>>
vue-计算属性-computed
查看>>
[网络流24题] 魔术球问题
查看>>
PHP----作业:查询数据显示在页面上
查看>>
特殊集合
查看>>
安卓维护项目小结以及注意事项[个人总结]
查看>>
重学前端学习笔记(四十三)--HTML的可访问性ARIA
查看>>
在CentOS 7上安装MongoDB
查看>>
前端-Excel在线预览
查看>>
多种跨域方案
查看>>
selenium
查看>>
豌豆荚
查看>>
bs4
查看>>
设计模式
查看>>
PowerDesigner连接数据库(oracle)
查看>>
gojs常用API (中文文档)
查看>>
【PHP】【java】执行父类构造函数之间的差异
查看>>
【php】 php在linux系统上运行,执行系统命令
查看>>
C语言的宏macro的使用
查看>>