P1843 奶牛晒衣服 范围不要设太大!
Posted pangbi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了P1843 奶牛晒衣服 范围不要设太大!相关的知识,希望对你有一定的参考价值。
题意:给出了n件衣服的潮湿度,给出自然风干的速度x 给出烘干机烘干的速度
只有一台烘干机,一次只能烘一件衣服
问最少需要多长时间才能够烘干所有衣服
思路:二分。我们给定一个范围,在这个范围内以天数进行二分
然后二分的时候,根据能否在这个天数内把所有衣服烘干为决定点即可
1 #include<bits/stdc++.h> 2 using namespace std; 3 const int maxn=5e5+10; 4 int a[maxn]; 5 int n,x,y; 6 int check(int mid) 7 { 8 int sum=0; 9 for(int i=1;i<=n;i++){ 10 int tmp=a[i]-mid*x; 11 if(tmp>0){ 12 sum+=tmp/y; 13 if(tmp%y) sum++; 14 } 15 } 16 if(sum>mid) return 0; 17 else return 1; 18 } 19 int main() 20 { 21 scanf("%d%d%d",&n,&x,&y); 22 for(int i=1;i<=n;i++){ 23 scanf("%d",&a[i]); 24 } 25 int L=0,R=maxn; 26 int ans=maxn; 27 while(L<=R){ 28 int mid=L+R>>1; 29 if(check(mid)){ 30 R=mid-1; 31 ans=mid; 32 } 33 else{ 34 L=mid+1; 35 } 36 } 37 printf("%d ",ans); 38 return 0; 39 }
以上是关于P1843 奶牛晒衣服 范围不要设太大!的主要内容,如果未能解决你的问题,请参考以下文章