求hack
查看原帖
求hack
779084
0x7f楼主2023/8/19 19:53

rt,具体做法是打时间戳,然后懒惰删除:WA 79pts

#include <bits/stdc++.h>
using namespace std;

unordered_map<int, int> cnt, f1;
map<pair<int, int>, int> mp, f2;

signed main() {
    ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
    int n; cin >> n;
    int s = 0, f = 0, last = 0;
    for (int i = 1; i <= n; i++) {
        int op, k, b; cin >> op >> k >> b;
        pair<int, int> p = {k ,b};
        if (f && k != last) {
            if (f1[k] != f) {
                cnt[k] = 0;
                f1[k] = f;
            }
            if (f2[p] != f) {
                mp[p] = 0;
                f2[p] = f;
            }
        }
        if (op == 1) {
            s++;
            cnt[k]++;
            mp[p]++;
        }
        else if (op == 2) {
            cout << s - cnt[k] << '\n';
        }
        else {
            cnt[k] -= mp[p];
            s = cnt[k];
            mp[p] = 0;
            f = i;
            last = k;
        }
    }
    return 0;
}

稍微改动(但明显假)的做法竟然优势互补

2023/8/19 19:53
加载中...