X星球的某个大奖赛设了M级奖励。每个级别的奖金是一个正整数。
并且,相邻的两个级别间的比例是个固定值。
也就是说:所有级别的奖金数构成了一个等比数列。比如:
16,24,36,54
其等比值为:3/2
现在,我们随机调查了一些获奖者的奖金数。
请你据此推算可能的最大的等比值。

输入格式:
第一行为数字N(n<100),表示接下的一行包含N个正整数
第二行N个正整数Xi(Xi<1 000 000 000 000),用空格分开。每个整数表示调查到的某人的奖金数额
要求输出:
一个形如A/B的分数,要求A、B互质。表示可能的最大比例系数
测试数据保证了输入格式正确,并且最大比例是存在的。

例如,输入:
3
1250 200 32
程序应该输出:
25/4
再例如,输入:
4
3125 32 32 200
程序应该输出:
5/2
再例如,输入:
3
549755813888 524288 2
程序应该输出:
4/1

资源约定:
峰值内存消耗 < 256M
CPU消耗 < 3000ms

思路:这里新学到了一种算法,当知道两个数 x,y。  x=p^i   y=p^j   那么我们怎么求这个p呢?  下面介绍一种类似辗转相除法的算法,

long long qgcd(long long a,long long  b){if(a==b)return a;else{return qgcd(min(b/a,a),max(b/a,a));}
}

做这题这个是关键,有了这个基础就不难了:

这个题目还是很有趣的。我们假设这个最大的公比是q=(q1/q2) //q1,q2均为正整数且互质

我们将这个序列按照升序排列之后,a1,a2,a3......an,可以得出a2/a1=q1x1/q2x1,  a3/a2=q1x2/q2x2......由于这个q一定是存在的,所以现在的问题就是分别找到分子和分母,

既然前提假设了q是确定的,那么q1,q2也一定是确定的,要想从 q1x1,q1x2,......q1xn中找到q1,我们可以利用类似于求gcd的辗转相除法,我们将所有的ai/ai-1进行约分确立分

子和分母,然后分别对所有的分子和分母进行辗转相除,最后约分输出就好了。还要注意的一点就是一定要对数组去重= =,不然会认为存在一个qx==1

看代码:

#include<bits/stdc++.h>
using namespace std;
long long gcd(long long a,long long b){return b?gcd(b,a%b):a;}
long long qgcd(long long a,long long  b){if(a==b)return a;else{return qgcd(min(b/a,a),max(b/a,a));}
}
int main()
{long long  a[105],b[105],x[105],n,N,i,j,k;cin>>n>>x[1];for(i=2;i<=n;++i){cin>>x[i];}sort(x+1,x+1+n);for(i=1;i<=n;++i){//去重if(x[i]==x[i-1]){for(j=i;j<=n;++j)x[j]=x[j+1];n--;}}for(i=2;i<=n;++i){//存所有后面一个除以前面一个的最简形式a[i]=x[i];b[i]=x[i-1];int p=gcd(a[i],b[i]);a[i]/=p;b[i]/=p;}int A=a[2],B=b[2];for(i=3;i<=n;++i){A=qgcd(A,a[i]);B=qgcd(B,b[i]);}cout<<A<<'/'<<B<<endl;return 0;
}

转载于:https://www.cnblogs.com/caijiaming/p/10522293.html

最大比例(压轴题 )相关推荐

  1. 可微偏导数一定存在_【导数压轴题】“偏导数”与含参不等式

    "证明不等式"是导数压轴题经常出现的题目,难度较大. 为什么说难度较大呢?因为这类题目通常没有通法,并且技巧性较强. 一般情况下,这类不等式只有一个变量,例如: . 当然也不缺少带 ...

  2. 中点坐标公式 矩形_压轴题必备|中考数学“动点坐标”问题,这个万能解法人人都能学会!...

    中考数学压轴题考什么? "存在性问题"一定榜上有名.而再深入研究,你就会发现:这些试题中,有近四分之一都是在考查"平行四边形的存在性问题(包括矩形和菱形)". ...

  3. 旋转轨迹_谁是最可怕的压轴题?——直线运动轨迹

    运动问题是数学物理中非常喜欢研究的问题,这和我们本生生活的三维空间有密切的关系,我们无时无刻都在运动着,不论是坐着.站着还是躺着,都在不断运动.运动有复杂的运动,也有简单的运动,今天我们我们来聊一聊最 ...

  4. pq 中m函数判断嵌套_压轴题的热点,二次函数与几何的结合,谁会谁吃香

    对于整个中考数学来说,二次函数的重要性,我想不用老师多说,大家肯定心里有数.二次函数作为初中数学的重要内容,命题老师很喜欢把它与其他几何图形进行结合,形成综合性更强的试题. 不可否认,二次函数与几何有 ...

  5. 三角形周长最短问题_2019年中考数学压轴题分析——最短路径问题8:造桥选址...

    本篇文章介绍的是另一种最短路径问题,在人教版八年级轴对称那一章的课题学习中,曾经介绍过一种叫做造桥选址的问题. 旧文章: 造桥选址问题 造桥选址问题解2013成都市中考数学压轴题 今天讲的其实一种变形 ...

  6. vc++画线段的函数_专题:精选中考数学压轴题5道,函数综合,内含解题秘籍

    考点解析: 精选中考数学压轴题,函数综合,涉及一次函数y=kx+b(k≠0),二次函数y=ax²+bx+c(a≠0),反比例函数y=k/x(k≠0).考察范围涵盖了这三种函数的各类知识点,包括解析式求 ...

  7. c++直角空心三角形_压轴题中对三角形中位线的另类诠释

    压轴题中对三角形中位线的另类诠释 关于三角形的中位线,定义是连接三角形两边中点的线段,性质是它平行于第三边且等于第三边的一半:判定方法是经过三角形一边中点且与第三边平行.在几何证明中,它的作用通常是构 ...

  8. 举例说明层次分析的三大原则_【高考压轴题分析】2014年辽宁卷压轴题

    在高考的导数题中,求参数的取值范围与分情况讨论一直是重难点,也是最让考生头痛的地方.但是,当这两个考点都不出现的时候,压轴题将会是什么样子? 在曾经高考单独命题的时代,辽宁省的命题一直是中规中矩,题型 ...

  9. MT【256】2016四川高考解答压轴题

    (2016四川高考数学解答压轴题)设函数$f(x)=ax^2-a-\ln x,a\in R$. 1)讨论$f(x)$的单调性; 2)确定$a$的所有可能值,使得$f(x)>\dfrac{1}{x ...

  10. 首发!2022高考数学压轴题解析!

    早点关注我,精彩不迷路! 昨天和大伙一样,从新闻里得知了今年的高考题,并听说难度极大,区分度极高.于是我便来了兴趣,拿起压轴题就做了起来.想看看12年一个轮回过去,那些年做过的题是否还是当年的模样,我 ...

最新文章

  1. 微型计算机技术实验报告,微型计算机技术及应用实验报告.docx
  2. boot界面上下键调节键不能动_手机音量键还有这5大作用,你知道几条?
  3. 使用.bat文件或者是cmd里面运行.jar文件
  4. ubuntu14.04的键盘失灵解决方案
  5. 计算机中函数counta表示,excel中counta函数的使用方法
  6. Web安全通讯之JWT的Java实现
  7. NBA球队球员介绍1
  8. vlan 动态ospf综合网络配置
  9. 【非原创】codeforces 1070C Cloud Computing 【线段树树状数组】
  10. linux系统yum提示注册,Linux:redhat6.5使用yum时提示需要注册问题解决方案
  11. TensorFlow by Google #10使用 NLP 构建讽刺分类器 Using NLP to build a sarcasm classifier
  12. java总结体会_Java课程总结心得体会
  13. WIN7操作系统IE11的离线安装(有时间总结下)
  14. HTML5+CSS:03优惠券
  15. android开发设置页面自适应横竖屏,android TV 竖屏页面开发
  16. pythonalist是什么意思_3. Python3轻食丨一个故事看懂List所有用法:1年级1班的班级生活...
  17. 给定平面上的n个点,求最多有多少个点共线
  18. crt格式证书转pem格式证书
  19. 金大侠的亲属与剑桥大学最厉害的三个学院
  20. python基础 培训班

热门文章

  1. 具有亲和力的文字隐藏方法
  2. [Hadoop] - 异常Cannot obtain block length for LocatedBlock
  3. 解决css引用字体跨域问题
  4. php -- PDO异常处理
  5. 【问题解决方案】谷歌浏览器如何打开“开发者工具”窗口
  6. 好久以来,就想为你写一首诗
  7. 【报告分享】Facebook IQ 2020年热门话题和趋势报告.pdf(附下载链接)
  8. 知识图谱盛会再度开启!洞悉KG的前沿技术与最新实践探索!!
  9. linux虚拟机怎么显示桌面,虚拟机中如何开启Linux的3d特效桌面?
  10. java中ur 传参数_java参数传递(超经典)