Submission #1203635

#TimeUsernameProblemLanguageResultExecution timeMemory
1203635rafsanamin2020Bouquet (EGOI24_bouquet)C++20
24 / 100
22 ms3360 KiB
#include <bits/stdc++.h> #define l first #define r second using namespace std; int solve1() { int K; vector<pair<int, int>> Q; cin >> K; for (int i = 0; i < K; i++) { int L, R; cin >> L >> R; Q.push_back({L, R}); } int v = Q[0].l; ++v; return (K / v) + (K % v == 0 ? 0 : 1); } int amnt(int f, int i, int off) { if (i + 1 > off + i) { return f + 1; } return f; } int solve2() { int K; vector<pair<int, int>> Q; cin >> K; vector<int> dp(K, 1); for (int i = 0; i < K; i++) { int L, R; cin >> L >> R; Q.push_back({L, R}); } reverse(Q.begin(), Q.end()); for (int i = 0; i < K; i++) { int idx = i + Q[i].l + 1; if (i > 0) dp[i] = max(dp[i], dp[i - 1]); if (idx < K) { dp[idx] = dp[i] + 1; } } // for (int x : dp) // { // cout << x << " "; // } return dp[K - 1]; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout << solve2(); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...