Submission #63826514
Source Code Expand
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef long double ld;
typedef vector<int> vi;
typedef vector<vector<int>> vvi;
typedef vector<long long> vll;
typedef vector<vector<long long>> vvll;
typedef pair<int, int> pii;
typedef pair<long long, long long> pll;
typedef set<int> si;
typedef set<long long> sll;
const ll MOD = 998244353;
const ld EPS = 1e-12;
#define endl "\n"
#define sp <<" "<<
#define forn(i, n) for(ll i = 0; i < n; i++)
#define rforn(i, n) for(ll i = n; i >= 0; i--)
#define dbg(x) cout << #x << " = " << x << endl
#define mp make_pair
#define pb push_back
#define fi first
#define se second
#define INF 1e18
#define fast_io() ios_base::sync_with_stdio(false); cin.tie(NULL)
#define all(x) (x).begin(), (x).end()
#define rall(x) (x).rbegin(), (x).rend()
#define sz(x) ((ll)(x).size())
struct segtree {
int l, r;
ll sum;
unordered_set<int> s;
segtree *left, *right;
inline void merge() {
for (int x : left->s) s.insert(x);
for (int x : right->s) s.insert(x);
sum = s.size();
}
segtree(int l, int r, vector<int> &data) : l(l), r(r) {
left = right = nullptr;
sum = 0;
if (l == r) {
sum = 1;
s.insert(data[l]);
return;
}
int m = (l + r) / 2;
left = new segtree(l, m, data);
right = new segtree(m + 1, r, data);
merge();
}
ll query(int ql, int qr) {
if (ql > r || qr < l) return 0;
if (ql <= l && r <= qr) return sum;
return left->query(ql, qr) + right->query(ql, qr);
}
};
void solution() {
int n; cin >> n;
vector<int> a(n);
for (int i = 0; i < n; i++) cin >> a[i];
segtree st(0, n-1, a);
ll ans = st.query(0, n-1);
// cerr << ans << endl;
for (int i = 0; i <= n-1; i++) {
ans = max(ans, st.query(0, i) + st.query(i+1, n-1));
}
cout << ans << endl;
return;
}
signed main() {
fast_io();
solution();
return 0;
}
Submission Info
| Submission Time | |
|---|---|
| Task | F - Variety Split Hard |
| User | countless |
| Language | C++ 20 (gcc 12.2) |
| Score | 0 |
| Code Size | 2117 Byte |
| Status | WA |
| Exec Time | 450 ms |
| Memory | 353504 KiB |
Judge Result
| Set Name | Sample | All | ||||||
|---|---|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 0 / 550 | ||||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | 00_sample_00.txt, 00_sample_01.txt |
| All | 00_sample_00.txt, 00_sample_01.txt, 01_test_00.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, 01_test_23.txt, 01_test_24.txt, 01_test_25.txt, 01_test_26.txt, 01_test_27.txt, 01_test_28.txt, 01_test_29.txt, 01_test_30.txt, 01_test_31.txt, 01_test_32.txt, 01_test_33.txt, 01_test_34.txt, 01_test_35.txt, 01_test_36.txt, 01_test_37.txt, 01_test_38.txt, 01_test_39.txt, 01_test_40.txt, 01_test_41.txt |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| 00_sample_00.txt | AC | 1 ms | 3588 KiB |
| 00_sample_01.txt | AC | 1 ms | 3516 KiB |
| 01_test_00.txt | WA | 1 ms | 3828 KiB |
| 01_test_01.txt | WA | 1 ms | 3620 KiB |
| 01_test_02.txt | WA | 2 ms | 4132 KiB |
| 01_test_03.txt | WA | 1 ms | 3952 KiB |
| 01_test_04.txt | WA | 1 ms | 3784 KiB |
| 01_test_05.txt | WA | 103 ms | 86788 KiB |
| 01_test_06.txt | WA | 444 ms | 346300 KiB |
| 01_test_07.txt | WA | 281 ms | 223140 KiB |
| 01_test_08.txt | WA | 445 ms | 346288 KiB |
| 01_test_09.txt | WA | 282 ms | 225760 KiB |
| 01_test_10.txt | WA | 444 ms | 346240 KiB |
| 01_test_11.txt | WA | 128 ms | 105904 KiB |
| 01_test_12.txt | WA | 445 ms | 346296 KiB |
| 01_test_13.txt | WA | 366 ms | 286836 KiB |
| 01_test_14.txt | WA | 444 ms | 346500 KiB |
| 01_test_15.txt | WA | 402 ms | 324044 KiB |
| 01_test_16.txt | WA | 199 ms | 178616 KiB |
| 01_test_17.txt | WA | 421 ms | 334092 KiB |
| 01_test_18.txt | WA | 243 ms | 211132 KiB |
| 01_test_19.txt | WA | 430 ms | 338932 KiB |
| 01_test_20.txt | WA | 269 ms | 232692 KiB |
| 01_test_21.txt | WA | 433 ms | 341276 KiB |
| 01_test_22.txt | WA | 289 ms | 252088 KiB |
| 01_test_23.txt | WA | 444 ms | 345916 KiB |
| 01_test_24.txt | WA | 312 ms | 272024 KiB |
| 01_test_25.txt | WA | 149 ms | 144980 KiB |
| 01_test_26.txt | WA | 153 ms | 144832 KiB |
| 01_test_27.txt | WA | 153 ms | 144824 KiB |
| 01_test_28.txt | WA | 153 ms | 144840 KiB |
| 01_test_29.txt | WA | 153 ms | 144840 KiB |
| 01_test_30.txt | WA | 154 ms | 144844 KiB |
| 01_test_31.txt | AC | 348 ms | 353504 KiB |
| 01_test_32.txt | AC | 450 ms | 353452 KiB |
| 01_test_33.txt | AC | 1 ms | 3436 KiB |
| 01_test_34.txt | AC | 1 ms | 3452 KiB |
| 01_test_35.txt | WA | 321 ms | 279572 KiB |
| 01_test_36.txt | WA | 175 ms | 166940 KiB |
| 01_test_37.txt | WA | 162 ms | 152656 KiB |
| 01_test_38.txt | AC | 350 ms | 353404 KiB |
| 01_test_39.txt | AC | 353 ms | 353444 KiB |
| 01_test_40.txt | AC | 350 ms | 353400 KiB |
| 01_test_41.txt | AC | 348 ms | 353384 KiB |