1 条题解
-
1
贪心
策略就是每次卖给别人品质最差的奶牛,用
multiset
#include <iostream> #include <set> const int maxn = 1e6 + 5; int n, op[maxn], num[maxn], ans; int main() { using std::cin; using std::cout; using std::endl; std::ios::sync_with_stdio(false); cin.tie(nullptr); cin >> n; std::multiset<int> s; for(int i = 1; i <= n; i++) cin >> op[i] >> num[i]; for(int i = n; i >= 1; i--) { if(op[i] == 1) { s.insert(num[i]); } else if(!s.empty()) { auto iter = s.lower_bound(num[i]); if(iter == s.end()) iter--; for(;;) { if(*iter <= num[i]) { ans++; s.erase(iter); break; } if(iter == s.begin()) break; iter--; }; } } cout << ans << endl; return 0; }
信息
- ID
- 155
- 时间
- 3000ms
- 内存
- 512MiB
- 难度
- 8
- 标签
- 递交数
- 329
- 已通过
- 44
- 上传者