YbtOJ 贪心算法课堂过关 例1 奶牛晒衣服【贪心】

YbtOJ 贪心算法课堂过关 例1 奶牛晒衣服【贪心】_第1张图片


思路

这道题是一个简单的贪心
直接把目前最大值上烘干机即可。
不过这样的时间复杂度时 O ( n 2 ) O(n^2) O(n2),会超时。
所以考虑堆优化。

C o d e Code Code

#include
#include
#include
#include
using namespace std;
priority_queue<int>q;
int n,a,b,j;
int main()
{
	cin>>n>>a>>b;
	for(int i=1; i<=n; i++)
	 {
	 	int x;
	 	scanf("%d",&x); 
	 	q.push(x);
	 }
	while(q.top()>j*a)
	 {
	 	int y=q.top();
	 	q.pop();
	 	q.push(y-b);  //维护大根堆
	 	j++;
	 }
	cout<<j;
	return 0;
}

你可能感兴趣的:(YbtOJ专项练习题,题解,贪心,YbtOJ,贪心算法,堆优化)