Submission #51860994
Source Code Expand
#include <bits/stdc++.h>
using namespace std;
#define rep(i, a, b) for(int i = a; i < (b); ++i)
#define all(x) begin(x), end(x)
#define sz(x) (int)(x).size()
#define pb push_back
typedef long long ll;
typedef pair<int, int> pii;
typedef vector<int> vi;
int main() {
cin.tie(0)->sync_with_stdio(0);
int n, q; cin >> n >> q;
vi x(q), z(q);
set<int> s;
for (int i = 0; i < q; ++i) {
cin >> x[i]; --x[i];
if (s.find(x[i]) != s.end()) {
s.erase(x[i]);
} else {
s.insert(x[i]);
}
z[i] = sz(s);
}
vector<ll> pf(q+1);
for (int i = 0; i < q; ++i) {
pf[i+1] = pf[i] + z[i];
}
map<int, int> m;
vector<ll> ans(n);
for (int i = 0; i < q; ++i) {
if (m.find(x[i]) != m.end()) {
int t = m[x[i]];
m.erase(x[i]);
ans[x[i]] += pf[i] - pf[t];
} else {
m[x[i]] = i;
}
}
for (auto [e, t] : m) {
ans[e] += pf[q] - pf[t];
}
for (int i = 0; i < n; ++i) {
cout << ans[i] << " ";
}
}
Submission Info
| Submission Time | |
|---|---|
| Task | E - Set Add Query |
| User | richzli |
| Language | C++ 20 (gcc 12.2) |
| Score | 500 |
| Code Size | 1137 Byte |
| Status | AC |
| Exec Time | 260 ms |
| Memory | 26592 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 500 / 500 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_01.txt, 00_sample_02.txt |
| All | 00_sample_01.txt, 00_sample_02.txt, 01_test_01.txt, 01_test_02.txt, 01_test_03.txt, 01_test_04.txt, 01_test_05.txt, 01_test_06.txt, 01_test_07.txt, 01_test_08.txt, 01_test_09.txt, 01_test_10.txt, 01_test_11.txt, 01_test_12.txt, 01_test_13.txt, 01_test_14.txt, 01_test_15.txt, 01_test_16.txt, 01_test_17.txt, 01_test_18.txt, 01_test_19.txt, 01_test_20.txt, 01_test_21.txt, 01_test_22.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_01.txt | AC | 1 ms | 3596 KiB |
| 00_sample_02.txt | AC | 1 ms | 3592 KiB |
| 01_test_01.txt | AC | 1 ms | 3580 KiB |
| 01_test_02.txt | AC | 13 ms | 6304 KiB |
| 01_test_03.txt | AC | 75 ms | 12516 KiB |
| 01_test_04.txt | AC | 77 ms | 12568 KiB |
| 01_test_05.txt | AC | 86 ms | 17048 KiB |
| 01_test_06.txt | AC | 186 ms | 15956 KiB |
| 01_test_07.txt | AC | 185 ms | 15648 KiB |
| 01_test_08.txt | AC | 187 ms | 15996 KiB |
| 01_test_09.txt | AC | 194 ms | 16068 KiB |
| 01_test_10.txt | AC | 195 ms | 15916 KiB |
| 01_test_11.txt | AC | 189 ms | 15972 KiB |
| 01_test_12.txt | AC | 180 ms | 15996 KiB |
| 01_test_13.txt | AC | 186 ms | 16048 KiB |
| 01_test_14.txt | AC | 198 ms | 15996 KiB |
| 01_test_15.txt | AC | 186 ms | 16140 KiB |
| 01_test_16.txt | AC | 12 ms | 6376 KiB |
| 01_test_17.txt | AC | 16 ms | 6248 KiB |
| 01_test_18.txt | AC | 18 ms | 6364 KiB |
| 01_test_19.txt | AC | 20 ms | 6144 KiB |
| 01_test_20.txt | AC | 21 ms | 6212 KiB |
| 01_test_21.txt | AC | 139 ms | 26592 KiB |
| 01_test_22.txt | AC | 260 ms | 26544 KiB |