icpc:problems:luogup1843
problems | |
---|---|
名称 | 奶牛晒衣服 |
题目编号 | P1843 |
题目链接 | luogu.com.cn/… |
来源 | Luogu |
算法分类 | 二分答案 |
难易程度 | 容易 |
奶牛晒衣服
想法
check判断时间是否成功,二分时间。
代码实现
#include<cstdio> #include<cmath> const int N = 5*1e5+10; int line[N], n, a, b; long long int sum; bool check(long long t) { long long temp=0; for(int i=1; i<=n; i++) { if(line[i] >= t * a) { temp += ceil(1.0 * (line[i] - t*a) / b); } } return temp <= t; } int main() { scanf("%d %d %d", &n, &a, &b); for(int i=1; i<=n; i++) { scanf("%d", &line[i]); sum += line[i]; } long long int l=1, r=sum, mid; while(l < r) { mid = (l + r) / 2; if(check(mid)) r = mid; else l = mid + 1; } printf("%lld", l); return 0; }
/app/www/public/data/pages/icpc/problems/luogup1843.txt · 最后更改: 2024/01/28 11:23 由 温婕莺