博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
codeforces 807 C. Success Rate(二分)
阅读量:5019 次
发布时间:2019-06-12

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

题目链接:

题意:记 AC 率为当前 AC 提交的数量 x / 总提交量 y 。已知最喜欢的 AC 率为 p/q (pq[0,1]) 。 求最少在提交多少题(AC or NOT)能恰好达到 AC 率为 p/q

 

题解:当然可以用数学的方法来求解,我的解法并不是用什么数学方法,直接二分暴力就行。

由于(x+s)/(y+s+us)=(p/q)(s表示ac的,us表示没ac的)所以不妨设

x+s=k*p,y+s+us=k*q。

然后就是枚举k就行了。

#include 
#include
using namespace std;typedef long long ll;int main() { ll t , x , y , p , q; cin >> t; while(t--) { cin >> x >> y >> p >> q; ll l = 1 , r = 1000000000; ll mid = (l + r) >> 1; while(l <= r) { mid = (l + r) >> 1; ll s = p * mid - x , tot = q * mid - y; //cout << s << ' ' << tot << endl; if(tot >= s && s >= 0) { r = mid - 1; } else { l = mid + 1; } } //cout << r + 1 << endl; if(x * q == y * p) { cout << 0 << endl; } else if(p == q || p == 0) { cout << -1 << endl; } else { cout << q * (r + 1) - y << endl; } } return 0;}

转载于:https://www.cnblogs.com/TnT2333333/p/6828254.html

你可能感兴趣的文章
2016年中国的SaaS服务商企业研究
查看>>
HTML5:离线存储(缓存机制)-IndexDB
查看>>
9-5
查看>>
Laxcus大数据管理系统2.0(5)- 第二章 数据组织
查看>>
kafka入门样例 for java
查看>>
Redis存储AccessToken
查看>>
Use commons-email-1.1.jar+activation.jar+mail.jar to send Email
查看>>
hdu 2160 Sequence one(DFS)
查看>>
ATM实验感受
查看>>
csharp基础
查看>>
hdu4497 正整数唯一分解定理应用
查看>>
html5 拖曳功能的实现[转]
查看>>
[BZOJ 2049] [Sdoi2008] Cave 洞穴勘测 【LCT】
查看>>
java导出word[xml方式]
查看>>
mysql load_file()和 into outfile
查看>>
响应式布局编码
查看>>
微服务实战(三):深入微服务架构的进程间通信 - DockOne.io
查看>>
Android菜鸟的成长笔记(6)——剖析源码学自定义主题Theme
查看>>
Java:类与继承
查看>>
struts2-(2)HelloWorld
查看>>