码迷,mamicode.com
首页 > 其他好文 > 详细

P1843 奶牛晒衣服 范围不要设太大!

时间:2020-04-12 16:12:47      阅读:48      评论:0      收藏:0      [点我收藏+]

标签:code   奶牛   一个   i++   std   ace   style   速度   lse   

题意:给出了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\n",ans);
38     return 0;
39 }
View Code

 

P1843 奶牛晒衣服 范围不要设太大!

标签:code   奶牛   一个   i++   std   ace   style   速度   lse   

原文地址:https://www.cnblogs.com/pangbi/p/12685820.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!