5644. 得到子序列的最少操作次数
状态:未AC
代码:
class Solution {
public:
unordered_map<int, int> m;
int minOperations(vector<int>& target, vector<int>& arr) {
int n = target.size(), sz = 0;
for (int i = 0; i < n; i++) m[target[i]] = i;
int dp[100010];
for (int i = 0; i < arr.size(); i++) {
if (!m.count(arr[i])) continue;
if (!sz || m[arr[i]] > dp[sz - 1]) {
dp[sz] = m[arr[i]];
sz++;
} else {
int id = lower_bound(dp, dp + sz, m[arr[i]]) - dp;
dp[id] = m[arr[i]];
}
}
return n - sz;
}
};