反悔贪心

基于小根堆的优先队列实现反悔贪心

基本思想:反悔贪心就是我们维护一个反悔堆,把想要反悔的放到堆中,然后不断贪心,如果发现可以反悔,那就反悔

 CF865D Buy Low Sell High

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,ans;
priority_queue<ll,vector<ll>,greater<ll>>q;//greater →less从大到小
int main()
{
	cin>>n;
	for(int i=0; i<n; i++)
	{
		ll p;
		cin>>p;
		if(q.size()&&q.top()<p)//q.size()==!q.empty() 当前可以卖 
		{
			ans+=p-q.top();//选择最佳的去卖 
			q.pop();
			q.push(p);//入堆 
		}
		q.push(p);//新元素加入反悔堆 
	}
	cout<<ans<<endl;
	return 0;
}

旅途的终点

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,m,k,sum=0;
ll a[200010];
priority_queue<ll,vector<ll>,greater<ll>>q;
int main()
{
	cin>>n>>m>>k;
	for(int i=0; i<n; i++)
	{
		cin>>a[i];
	}
	for(int i=0; i<n; i++)
	{
		q.push(a[i]);//执行q.pop()后开始进行互换操作
		if(q.size()>k)//开始反悔操作,对k后面用神力,k前的用耗生命值低的进行互换
		{
			sum+=q.top();//低生命值
			q.pop();
		}
		if(sum>=m)
		{
			cout<<i<<endl;
			return 0;
		}
	}
	cout<<n<<endl;
	return 0;
}

相关推荐

  1. 反悔贪心

    2024-07-20 15:52:04       21 阅读
  2. 学习笔记 反悔贪心

    2024-07-20 15:52:04       31 阅读
  3. 反悔贪心和例题

    2024-07-20 15:52:04       22 阅读
  4. 反悔贪心,LeetCode 2813. 子序列最大优雅度

    2024-07-20 15:52:04       28 阅读
  5. <span style='color:red;'>反射</span>...

    反射...

    2024-07-20 15:52:04      20 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-20 15:52:04       60 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-20 15:52:04       63 阅读
  3. 在Django里面运行非项目文件

    2024-07-20 15:52:04       51 阅读
  4. Python语言-面向对象

    2024-07-20 15:52:04       62 阅读

热门阅读

  1. 我们的耳穴项目迈进了一大步

    2024-07-20 15:52:04       22 阅读
  2. 【前后端联调】HttpMessageNotReadableException

    2024-07-20 15:52:04       20 阅读
  3. 恒等式结论

    2024-07-20 15:52:04       16 阅读
  4. Https post 请求时绕过证书验证方案

    2024-07-20 15:52:04       21 阅读
  5. 素数极差

    2024-07-20 15:52:04       16 阅读
  6. 数据结构——栈

    2024-07-20 15:52:04       19 阅读
  7. 量化交易对短期收益的提升效果

    2024-07-20 15:52:04       18 阅读
  8. ArcGIS Pro SDK (九)几何 9 立方贝塞尔线段

    2024-07-20 15:52:04       17 阅读
  9. glibc: getifaddrs_internal 占用大量cpu

    2024-07-20 15:52:04       14 阅读
  10. 【关于使用swoole的知识点整理】

    2024-07-20 15:52:04       15 阅读