标签: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 }
标签:code 奶牛 一个 i++ std ace style 速度 lse
原文地址:https://www.cnblogs.com/pangbi/p/12685820.html