Submission #1153369

#TimeUsernameProblemLanguageResultExecution timeMemory
1153369toast12Studentsko (COCI14_studentsko)C++20
100 / 100
35 ms584 KiB
#include <bits/stdc++.h> using namespace std; const int INF = 1e9; int main() { int n, k; cin >> n >> k; map<int, int> m; vector<int> a(n); for (int i = 0; i < n; i++) { cin >> a[i]; m[a[i]] = i; } int cur = 0, i = 0; for (auto x : m) { if (i % k == 0) cur++; m[x.first] = cur; i++; } vector<int> v; for (int i = 0; i < n; i++) v.push_back(m[a[i]]); // longest non-decreasing subsequence vector<int> dp(n+1, 1); for (int i = 0; i < n; i++) { for (int j = 0; j < i; j++) { if (v[j] <= v[i]) dp[i] = max(dp[i], dp[j]+1); } } int ans = 0; for (int i = 0; i < n; i++) ans = max(ans, dp[i]); cout << n-ans << '\n'; return 0; }
#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...
#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...