| 16192 | 2025-04-14 14:40:04 | zsombor | Növekvő Ödön és a Másoló Varázsló | cpp17 | Wrong answer 5/100 | 152ms | 7276 KiB |
// Növekvő Ödön és a Másoló Varázsló.cpp : This file contains the 'main' function. Program execution begins and ends there.
//
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int n, m, ans = 1e9;
vector <int> a(5e5, 0);
vector <int> b;
vector <int> dp(5e5, 1e9);
vector <int> f(5e5, 1e9);
int gr(int x) {
return b.end() - lower_bound(b.begin(), b.end(), x);
}
int pos(int k) {
return n + m - k - gr(a[k]);
}
void update(int k) {
int x = pos(k);
for (int i = x; i < f.size(); i = (i | (i + 1))) f[i] = min(f[i], dp[k]);
}
void query(int k) {
int x = pos(k) + 1;
for (int i = x; i >= 0; i = (i & (i + 1)) - 1) dp[k] = min(dp[k], f[i]);
dp[k]--;
ans = min(ans, dp[k]);
}
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cin >> n >> m;
for (int i = 1; i <= n; i++) cin >> a[i];
b.resize(m);
for (int& i : b) cin >> i;
sort(b.begin(), b.end());
dp[0] = n;
for (int i = 1; i <= n; i++) {
if (a[i - 1] < a[i]) dp[i] = dp[i - 1];
query(i);
update(i - 1);
}
cout << ans << "\n";
/*for (int i = 0; i <= n; i++) cout << pos(i) << " ";
cout << "\n";
for (int i = 0; i <= n; i++) cout << dp[i] << " ";*/
}| Subtask | Sum | Test | Verdict | Time | Memory | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Accepted | 4ms | 6196 KiB | ||||
| 2 | Wrong answer | 35ms | 6452 KiB | ||||
| subtask2 | 0/5 | ||||||
| 3 | Accepted | 52ms | 6964 KiB | ||||
| 4 | Accepted | 52ms | 7040 KiB | ||||
| 5 | Wrong answer | 52ms | 6964 KiB | ||||
| subtask3 | 0/10 | ||||||
| 6 | Wrong answer | 6ms | 6196 KiB | ||||
| 7 | Wrong answer | 7ms | 6196 KiB | ||||
| 8 | Accepted | 7ms | 6196 KiB | ||||
| subtask4 | 0/15 | ||||||
| 9 | Accepted | 7ms | 6196 KiB | ||||
| 10 | Wrong answer | 7ms | 6196 KiB | ||||
| 11 | Accepted | 7ms | 6196 KiB | ||||
| 12 | Wrong answer | 6ms | 6392 KiB | ||||
| subtask5 | 5/5 | ||||||
| 13 | Accepted | 7ms | 6196 KiB | ||||
| 14 | Accepted | 8ms | 6392 KiB | ||||
| 15 | Accepted | 8ms | 6408 KiB | ||||
| subtask6 | 0/5 | ||||||
| 16 | Wrong answer | 8ms | 6336 KiB | ||||
| 17 | Wrong answer | 8ms | 6196 KiB | ||||
| 18 | Wrong answer | 8ms | 6196 KiB | ||||
| 19 | Wrong answer | 8ms | 6388 KiB | ||||
| subtask7 | 0/10 | ||||||
| 20 | Accepted | 8ms | 6336 KiB | ||||
| 21 | Accepted | 8ms | 6088 KiB | ||||
| 22 | Wrong answer | 8ms | 6264 KiB | ||||
| 23 | Accepted | 7ms | 6100 KiB | ||||
| 24 | Wrong answer | 8ms | 6196 KiB | ||||
| subtask8 | 0/25 | ||||||
| 25 | Wrong answer | 59ms | 6452 KiB | ||||
| 26 | Accepted | 59ms | 6452 KiB | ||||
| 27 | Accepted | 57ms | 6572 KiB | ||||
| 28 | Accepted | 4ms | 6196 KiB | ||||
| 29 | Wrong answer | 75ms | 6708 KiB | ||||
| 30 | Accepted | 57ms | 6452 KiB | ||||
| 31 | Accepted | 57ms | 6584 KiB | ||||
| 32 | Accepted | 59ms | 6452 KiB | ||||
| 33 | Accepted | 59ms | 6452 KiB | ||||
| 34 | Accepted | 59ms | 6452 KiB | ||||
| 35 | Accepted | 61ms | 6452 KiB | ||||
| 36 | Accepted | 57ms | 6452 KiB | ||||
| 37 | Accepted | 57ms | 6452 KiB | ||||
| 38 | Accepted | 61ms | 6452 KiB | ||||
| 39 | Wrong answer | 75ms | 6452 KiB | ||||
| 40 | Wrong answer | 61ms | 6704 KiB | ||||
| 41 | Accepted | 61ms | 6708 KiB | ||||
| 42 | Accepted | 37ms | 6452 KiB | ||||
| 43 | Accepted | 57ms | 6592 KiB | ||||
| 44 | Accepted | 57ms | 6452 KiB | ||||
| 45 | Accepted | 59ms | 6700 KiB | ||||
| subtask9 | 0/25 | ||||||
| 46 | Accepted | 111ms | 7096 KiB | ||||
| 47 | Accepted | 115ms | 7276 KiB | ||||
| 48 | Accepted | 109ms | 7108 KiB | ||||
| 49 | Wrong answer | 152ms | 7080 KiB | ||||
| 50 | Wrong answer | 150ms | 7080 KiB | ||||
| 51 | Wrong answer | 150ms | 7088 KiB | ||||
| 52 | Accepted | 101ms | 6964 KiB | ||||
| 53 | Accepted | 108ms | 7032 KiB | ||||
| 54 | Wrong answer | 116ms | 6964 KiB | ||||
| 55 | Wrong answer | 115ms | 6964 KiB | ||||