Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <vector>
- #include <algorithm>
- #include <set>
- #include <cmath>
- #include <map>
- using namespace std;
- int n, a[1100], ans, b, c, b1, c1, sum, dp[100010], t[100010], x[100010], T;
- set<int> v;
- int main()
- {
- // freopen("cakes.in", "r", stdin);
- // freopen("cakes.out", "w", stdout);
- cin >> n >> T;
- for (int i = 0; i < n; i++)
- cin >> x[i] >> t[i];
- for (int i = 0; i < n; i++)
- {
- if (T < x[i])
- break;
- else
- v.insert(t[i]);
- sum += t[i];
- dp[i] = v.size();
- while (sum + x[i] > T)
- {
- auto it = v.end();
- it--;
- sum -= *it;
- v.erase(it);
- dp[i] = v.size();
- }
- }
- cout << dp[n - 1];
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement