博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hdu 4180
阅读量:5129 次
发布时间:2019-06-13

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

题意; 求接近规定 分数 的 最大分数 用到 farey 数列的第二条性质  1 #include 
2 #include
3 using namespace std; 4 /** 5 |a/b-c/d|最小, 同分的|(ad-bc)/bd| 最小,,即求 6 |ax-by| 最小 7 若a,b 有公约数则同分即可。。最小为0 8 若a,b无公约数,即a,b互质,即求ax-by=1或 -ax+by = 1 9 此时需要注意 若a==1 求解释x=1,y=0.。。所以当a=1时需要特殊处理10 若a!=1 时,,就需要对上面的两个式子ax-by=1或 -ax+by = 1判断,找出最接近的解,即比较分母大的即可11 12 */13 long long ex_gcd(long long a,long long b,long long &x, long long &y){14 if(b==0){15 x =1;16 y =0;17 return a;18 }19 long long d = ex_gcd(b,a%b,x,y);20 long long temp = x;21 x = y;22 y = temp - a/b * y;23 return d ;24 }25 26 27 int main()28 {29 int t;30 cin>>t;31 long long a,b,x,y,gcd,d1,d2,c1,c2;32 char c;33 while(t--){34 cin>>a>>c>>b;35 gcd = ex_gcd(a,b,x,y);36 if(gcd!=1){37 cout<
d2)49 cout<
<<"/"<
<

 

转载于:https://www.cnblogs.com/Bang-cansee/p/3617715.html

你可能感兴趣的文章
扩展KMP
查看>>
Need ffmpeg exe. You can download it by calling: imageio.plugins.ffmpeg.download()
查看>>
数据结构实现时所需的成员变量、标准对外接口
查看>>
vs 错误提示及解决方案
查看>>
PL/SQL中查询Oracle大数(17位以上)时显示科学计数法的解决方法
查看>>
第一阶段SCRUM冲刺 05
查看>>
第一章 开始
查看>>
flashback drop
查看>>
Ubuntu 16.04搭建lamp环境
查看>>
《HelloGitHub》第 16 期
查看>>
idea 同project添加多个module maven支持
查看>>
创建UPC/EAN/JAN 条形码控件UPC/EAN/JAN Fontware
查看>>
jboss项目迁移至WebLogic12
查看>>
基于云的胜利冲锋队 团队团队展示
查看>>
取消RAID5
查看>>
android intent和intent action大全
查看>>
【网络】计算机网络
查看>>
break和continue
查看>>
关于Set Nocount ON的性能 |c#调用存储过程的返回值总是-1
查看>>
js日期时间补零
查看>>