제출 #1220856

#제출 시각아이디문제언어결과실행 시간메모리
1220856overwatch9Bouquet (EGOI24_bouquet)C++20
28 / 100
3095 ms2632 KiB
#include <bits/stdc++.h> using namespace std; bool comp(pair <int, int> a, pair <int, int> b) { return a.second < b.second; } int main() { int n; cin >> n; vector <pair <int, int>> nums(n+1); for (int i = 1; i <= n; i++) { cin >> nums[i].first >> nums[i].second; } vector <int> dp(n+1); // let dp[i] = maximum number of tulips that may be picked if the ith tulip is def picked for (int i = 1; i <= n; i++) { int l = i - nums[i].first; dp[i] = 1; for (int j = l-1; j >= 1; j--) { int r = j + nums[j].second + 1; if (r <= i) dp[i] = max(dp[i], dp[j] + 1); } } cout << *max_element(dp.begin(), dp.end()) << '\n'; }
#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...