Submission #770884

#TimeUsernameProblemLanguageResultExecution timeMemory
770884The_SamuraiRabbit Carrot (LMIO19_triusis)C++17
63 / 100
1078 ms2252 KiB
#include "bits/stdc++.h" using namespace std; using ll = long long; const int inf = 1e9; void solve() { int n, m; cin >> n >> m; vector<int> a(n + 1), dp(n + 1, inf); for (int i = 1; i <= n; i++) { cin >> a[i]; } dp[0] = 0; for (int i = 0; i < n; i++) { dp[n] = min(dp[n], dp[i] + n - i); for (int j = i + 1; j <= n; j++) { if (a[j] <= a[i] + m * (j - i)) { dp[j] = min(dp[j], dp[i] + (j - i - 1)); } } // cout << i << " -> " << dp[i] << endl; } cout << dp[n]; } int main() { ios_base::sync_with_stdio(false); cout.tie(nullptr); cin.tie(nullptr); int queries = 1; #ifdef test_cases freopen("input.txt", "r", stdin); freopen("output.txt", "w", stdout); cin >> queries; #else // cin >> queries; #endif for (int test_case = 1; test_case <= queries; test_case++) { solve(); cout << '\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...