大家好,我是泡泡,给大家带来每日一题的目的是为了更好的练习算法,我们的每日一题为了让大家练到各种各样的题目,熟悉各种题型,一年以后,蜕变成为一个不一样的自己!
🎉欢迎关注🔎点赞👍收藏⭐️留言📝
❤️ :热爱C/C++与算法学习,云计算等,期待一起交流!
🙏作者水平有限,如果发现错误,求告知,多谢!
👻高校算法学习社区:高校算法学习社区-CSDN社区云
一起加入刷题内卷大军,还可以加入专属内卷群,里面福利多多大佬多多!
今日题目:奶牛
题目分析
题目难度:⭐️⭐️
题目涉及算法:二分答案,贪心。
ps:有能力的小伙伴可以尝试优化自己的代码或者一题多解,这样能综合提升自己的算法能力
题解报告:
1.思路
二分答案,就不多说啦,这几天做的应该都没问题
2.代码
#include<bits/stdc++.h>
using namespace std;
const int N = 1e6+10;
int c[N];
int n,a,b,i,j,k,y,m;
bool check(int x)
{
k=0;
for(i=1;i<=n;i++)
{
j=c[i]-a*m;
if(j<=0)
{
continue;
}
y=j/b;
if(j%b!=0)
{
y++;
}
k+=y;
if(k>m)
{
return 0;
}
}
if(k<=m)
{
return 1;
}
return 0;
}
int main()
{
cin>>n>>a>>b;
for(i=1;i<=n;++i)
{
scanf("%d",&c[i]);
}
int l=0,r=500010;
while(l!=r)
{
m=(l+r)/2;
if(check(m))
{
r=m;
}
else
{
l=m+1;
}
}
cout<<l;
return 0;
}