
贪心
贪心
谁是凶手1703
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
区间覆盖问题【贪心】【双指针】
https://www.acwing.com/activity/content/problem/content/1114/1/ 贪心思路: 把所有区间按照起点排序 遍历每个区间,找到可以进过st的最远距离,用双指针算法 #include<bits/stdc++.h> using namespace std; const int N=1e5+10; typedef pair<int...原创 2019-08-22 20:30:28 · 174 阅读 · 0 评论 -
超市【堆 贪心】
https://www.acwing.com/problem/content/description/147/ 先按照过期时间排序; 定义小根堆(权重) 小根堆代表前q.size(),卖出的商品 遍历每一个商品,如果当前的商品过期时间>q.size() 把商品入堆 反之,比较堆顶元素,若堆顶元素值比商品值小。pop掉,商品入堆 #include<iostream> #inclu...原创 2019-08-24 16:23:12 · 191 阅读 · 0 评论 -
超市【贪心+并查集优化】
https://www.acwing.com/solution/acwing/content/1350/ 贪心策略: 在不过期的时间内优先卖出利润更大的产品。 按照价值降序,每次扫描到一个价值,尝试一下在过期之前能不能卖出去;此时可能已经有比它更大价值的产品占用了一些日期,于是从过期时间往前面找,直到找到一个空位置。如果这个空位置大于0,那么就把这个产品安排在这天卖出。 暴力找位置最坏复杂度可以达...原创 2019-08-24 19:27:56 · 199 阅读 · 0 评论 -
导弹防御系统【dfs+贪心】
题意 问最少有多少个上升子序列 和下降子序列 可以覆盖一个序列 #include<bits/stdc++.h> using namespace std; const int N=100; int a[N],up[N],down[N]; int n; bool dfs(int depth,int u,int su,int sd){ if(su+sd>depth) re...原创 2019-10-30 23:11:55 · 309 阅读 · 0 评论 -
基础贪心算法小总结
区间选点&最大不相交数量 做法 按照右端点排序,然后模拟,期间记录一个last变量 #include<bits/stdc++.h> using namespace std; const int N=1e5; typedef pair<int,int>pll; pll a[N]; int n; int main() { cin>>n; for(int i=0;i<n;i++) { cin>>a[i].s原创 2020-08-14 10:21:56 · 144 阅读 · 0 评论