Submission #161263

# Submission time Handle Problem Language Result Execution time Memory
161263 2019-11-01T16:21:17 Z pink_bittern Segments (IZhO18_segments) C++14
75 / 100
3064 ms 19220 KB
#include <bits/stdc++.h>
#define pb push_back
#define pll pair <ll, ll>
#define MOMI using namespace std;
#define mp make_pair
#define pyshnapyshnakaa ios_base :: sync_with_stdio(0); cin.tie(0); cout.tie(0);
#pragma optimize("TKACHENKO-GORYACHENKO")
#pragma GCC optimize("O3")
#pragma GCC optimize("Ofast")
#pragma GCC optimize("unroll-loops")
 
typedef int ll;
 
typedef long double ld;
 
using namespace std;
 
const ll inf = 2e9 + 500;
const ll maxn = 2e5 + 1e4;
const ll block = 150;
const ll block_sz = (maxn + block - 1) / block + 100;
 
ll n, m, k, t;
 
struct seg{
	ll l;
	ll r;
	inline ll sz() const {
		return r - l + 1;
	}
	ll i;
};
 
inline bool operator==(seg a, seg b) {
	return a.i == b.i;
}
 
vector <seg> S;
 
struct R {
	bool operator()(seg a, seg b) const {
		if (a.r == b.r) {
			return a.i < b.i;
		}
		return a.r < b.r; 
	}
};
 
struct L {
	bool operator()(seg a, seg b) const {
		if (a.l == b.l) {
			return a.i < b.i;
		}
		return a.l < b.l;
	}
};
 
vector <seg> lasts;
 
inline bool cmp(seg a, seg b) {
	return (a.r - a.l) < (b.r - b.l);
}
 
inline bool cmpl(const seg& a, const seg& b) {
	return a.l < b.l;
}
 
inline bool cmpr(const seg& a, const seg& b) {
	return a.r < b.r;
}
 
inline bool cmpsz(const seg& a, const seg& b) {
	return a.sz() < b.sz();
}
 
vector <seg> segs;
 
vector <seg> R[block];
 
vector <seg> L[block];
 
ll MNL[block];
ll MXL[block];
ll MNR[block];
ll MXR[block];
 
ll IL[maxn];
ll IR[maxn];
 
bool used[maxn];
 
inline void buildL(ll q) {
	ll w;
	sort(L[q].begin(), L[q].end(), cmpsz);
	MNL[q] = inf;
	MXL[q] = -inf;
	for (w = 0; w < L[q].size(); w++) {
		MNL[q] = min(MNL[q], L[q][w].l);
		MXL[q] = max(MXL[q], L[q][w].l);
	}
}
 
inline void buildR(ll q) {
	ll w;
	MNR[q] = inf;
	MXR[q] = -inf;
	sort(R[q].begin(), R[q].end(), cmpsz);
	for (w = 0; w < R[q].size(); w++) {
		MNR[q] = min(MNR[q], R[q][w].r);
		MXR[q] = max(MXR[q], R[q][w].r);
	}
}
 
inline void rebuild() { 
	ll q, w;
	lasts.clear();
	ll blocki = 0;
	for (q = 0; q < block; q++) {
		R[q].clear();
		L[q].clear();
	}
	sort(segs.begin(), segs.end(), cmpl);
	for (auto p : segs) {
		if (used[p.i]) {
			continue;
		}
		if (L[blocki].size() > block_sz) {
			blocki++;
		}
		IL[p.i] = blocki;
		L[blocki].pb(p);
	}
	sort(segs.begin(), segs.end(), cmpr);
	for (auto p: segs) {
		if (used[p.i]) {
			continue;
		}
		if (R[blocki].size() > block_sz) {
			blocki++;
		}
		IR[p.i] = blocki;
		R[blocki].pb(p);
	}
	for (q = 0; q < block; q++) {
		buildL(q);
	}
	for (q = 0; q < block; q++) {
		buildR(q);
	}
}
 
inline void add(seg a) {
	lasts.pb(a);
	S.pb(a);
	segs.push_back(a);
	IL[a.i] = IR[a.i] = -1;
}
 
inline void del(seg b) { 
	ll il = IL[b.i], ir = IR[b.i];
	used[b.i] = 1;
	if (il == -1) {
		return;
	}
	L[il].erase(find(L[il].begin(), L[il].end(), b));
	R[ir].erase(find(R[ir].begin(), R[ir].end(), b));
	buildL(il);
	buildR(ir);
}
 
inline ll slowL(ll i, ll x, ll l) {
	ll q;
	ll ans = 0;
	for (q = 0; q < L[i].size(); q++) {
		if (L[i][q].l >= l && L[i][q].sz() >= x) {
			ans++;
		}
	}
	return ans;
}
 
inline ll slowR(ll i, ll x, ll r) {
	ll q;
	ll ans = 0;
	for (q = 0; q < R[i].size(); q++) {
		if (R[i][q].r <= r && R[i][q].sz() >= x) {
			ans++;
		}
	}
	return ans;
}
 
inline ll fastL(ll i, ll x) {
	seg good;
	good.l = 0; good.r = x - 1; 
	ll j = (lower_bound(L[i].begin(), L[i].end(), good, cmpsz) - L[i].begin());
	return L[i].size() - j;
}
 
inline ll fastR(ll i, ll x) {
	seg good;
	good.l = 0; good.r = x - 1;
	ll j = (lower_bound(R[i].begin(), R[i].end(), good, cmpsz) - R[i].begin());
	return R[i].size() - j;
}
 
inline ll getansL(ll x, ll l) {
	ll q;
	ll ans = 0;
	for (q = 0; q < block; q++) {
		if (MNL[q] == inf) {
			continue;
		}
		if (MNL[q] >= l) {
			ans += fastL(q, x);
			continue;
		}
		if (MXL[q] < l) {
			continue;
		}
		if (MNL[q] < l) {
			ans += slowL(q, x, l);
		}
	}
 
	for (q = 0; q < lasts.size(); q++) {
		if (used[lasts[q].i]) {
			continue;
		}
		if (lasts[q].l >= l && lasts[q].sz() >= x) {
			ans++;
		}
	}
	return ans;
}
 
inline ll getansR(ll x, ll r) {
	ll q;
	ll ans = 0;
	ll cnt = 0;
	for (q = 0; q < block; q++) {
		if (MNR[q] == inf) {
			continue;
		}
		// if (q > 1) {
		// 	if (MXR[q - 1] > MNR[q]) {
		// 		exit(-1);
		// 	}
		// }
		if (MXR[q] <= r) {
			ll dans = fastR(q, x);
			ans += dans;
			continue;
		}
		if (MNR[q] > r) {
			continue;
		}
		/// MXR[q] > r && MNR[q] <= r, 
		ll dans = slowR(q, x, r);
		ans += dans;
		cnt++;
	}
	// if (cnt > 5) {
	// 	exit(-1);
	// }
	for (q = 0; q < lasts.size(); q++) {
		if (used[lasts[q].i]) {
			continue;
		}
		if (lasts[q].r <= r && lasts[q].sz() >= x) {
			ans++;
		}
	}
	return ans;
}
 
inline ll answer(seg c, ll k) {
	if (c.sz() < k) {
		return 0;
	}
	ll q, w;
	ll ans = 0;
	ll lk = c.r - k + 2, rk = c.l + k - 2;
	ll allans = getansR(k, inf);
	ll dansl = getansL(k, lk);
	ll dansr = getansR(k, rk);
	ans = allans - dansr - dansl;
	return ans;
}
 
signed main() {
	ll q, w, e, a, b, c;
	pyshnapyshnakaa;
	cin >> n >> t;
	// cout << block_sz * block << endl;
	ll nxt = 0;
	ll lastans = 0;
	ll cnt3 = 0;
	for (q = 0; q < n; q++) {
		ll comm;
		cin >> comm;
		ll l, r;
		seg x;
		if (comm == 1) {
			cin >> l >> r;
			l ^= (lastans * t);
			r ^= (lastans * t);
			if (l > r) {
				swap(l, r);
			}
			x.l = l; x.r = r;
			x.i = S.size();
			add(x);
		}
		if (comm == 2) {
			cin >> a;
			a--;
			del(S[a]);
		}
		// if (cnt3 > 8e4 && n > 1e5) {
		// 	exit(-1);
		// }
		if (comm == 3) {
			cnt3++;
			cin >> l >> r;
			l ^= (lastans * t);
			r ^= (lastans * t);
			if (lasts.size() >= block_sz) {
				rebuild();
			}
			if (l > r) {
				swap(l, r);
			} 
			x.l = l; x.r = r;
			cin >> c;
			lastans = answer(x, c);
			cout << lastans << '\n';
		}
	}
	return 0;
}

Compilation message

segments.cpp:7:0: warning: ignoring #pragma optimize  [-Wunknown-pragmas]
 #pragma optimize("TKACHENKO-GORYACHENKO")
 
segments.cpp: In function 'void buildL(ll)':
segments.cpp:97:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (w = 0; w < L[q].size(); w++) {
              ~~^~~~~~~~~~~~~
segments.cpp: In function 'void buildR(ll)':
segments.cpp:108:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (w = 0; w < R[q].size(); w++) {
              ~~^~~~~~~~~~~~~
segments.cpp: In function 'void rebuild()':
segments.cpp:115:8: warning: unused variable 'w' [-Wunused-variable]
  ll q, w;
        ^
segments.cpp: In function 'll slowL(ll, ll, ll)':
segments.cpp:174:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (q = 0; q < L[i].size(); q++) {
              ~~^~~~~~~~~~~~~
segments.cpp: In function 'll slowR(ll, ll, ll)':
segments.cpp:185:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (q = 0; q < R[i].size(); q++) {
              ~~^~~~~~~~~~~~~
segments.cpp: In function 'll getansL(ll, ll)':
segments.cpp:226:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (q = 0; q < lasts.size(); q++) {
              ~~^~~~~~~~~~~~~~
segments.cpp: In function 'll getansR(ll, ll)':
segments.cpp:266:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for (q = 0; q < lasts.size(); q++) {
              ~~^~~~~~~~~~~~~~
segments.cpp: In function 'll answer(seg, ll)':
segments.cpp:281:5: warning: unused variable 'q' [-Wunused-variable]
  ll q, w;
     ^
segments.cpp:281:8: warning: unused variable 'w' [-Wunused-variable]
  ll q, w;
        ^
segments.cpp: In function 'int main()':
segments.cpp:292:8: warning: unused variable 'w' [-Wunused-variable]
  ll q, w, e, a, b, c;
        ^
segments.cpp:292:11: warning: unused variable 'e' [-Wunused-variable]
  ll q, w, e, a, b, c;
           ^
segments.cpp:292:17: warning: unused variable 'b' [-Wunused-variable]
  ll q, w, e, a, b, c;
                 ^
segments.cpp:296:5: warning: unused variable 'nxt' [-Wunused-variable]
  ll nxt = 0;
     ^~~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 10 ms 632 KB Output is correct
4 Correct 10 ms 504 KB Output is correct
5 Correct 14 ms 888 KB Output is correct
6 Correct 17 ms 760 KB Output is correct
7 Correct 37 ms 632 KB Output is correct
8 Correct 70 ms 772 KB Output is correct
9 Correct 70 ms 760 KB Output is correct
10 Correct 32 ms 916 KB Output is correct
11 Correct 25 ms 764 KB Output is correct
12 Correct 27 ms 760 KB Output is correct
13 Correct 31 ms 888 KB Output is correct
14 Correct 74 ms 772 KB Output is correct
15 Correct 9 ms 504 KB Output is correct
16 Correct 12 ms 504 KB Output is correct
17 Correct 65 ms 824 KB Output is correct
18 Correct 46 ms 824 KB Output is correct
19 Correct 71 ms 652 KB Output is correct
20 Correct 80 ms 660 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 934 ms 4612 KB Output is correct
2 Correct 978 ms 5444 KB Output is correct
3 Correct 975 ms 5428 KB Output is correct
4 Correct 905 ms 5816 KB Output is correct
5 Correct 225 ms 8452 KB Output is correct
6 Correct 161 ms 8596 KB Output is correct
7 Correct 937 ms 5540 KB Output is correct
8 Correct 941 ms 5412 KB Output is correct
9 Correct 963 ms 5476 KB Output is correct
10 Correct 1116 ms 3320 KB Output is correct
11 Correct 1121 ms 3848 KB Output is correct
12 Correct 682 ms 6896 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 266 ms 2504 KB Output is correct
2 Correct 233 ms 3328 KB Output is correct
3 Correct 328 ms 3336 KB Output is correct
4 Correct 242 ms 3376 KB Output is correct
5 Correct 445 ms 6804 KB Output is correct
6 Correct 561 ms 6160 KB Output is correct
7 Correct 511 ms 6532 KB Output is correct
8 Correct 165 ms 8584 KB Output is correct
9 Correct 645 ms 8340 KB Output is correct
10 Correct 1895 ms 7012 KB Output is correct
11 Correct 1501 ms 3504 KB Output is correct
12 Correct 1853 ms 7224 KB Output is correct
13 Correct 2208 ms 6872 KB Output is correct
14 Correct 2849 ms 4508 KB Output is correct
15 Correct 2859 ms 4296 KB Output is correct
16 Correct 2725 ms 3692 KB Output is correct
17 Correct 695 ms 5408 KB Output is correct
18 Correct 653 ms 5536 KB Output is correct
19 Correct 672 ms 5684 KB Output is correct
20 Correct 678 ms 5412 KB Output is correct
21 Correct 1893 ms 3320 KB Output is correct
22 Correct 2891 ms 5012 KB Output is correct
23 Correct 2684 ms 6808 KB Output is correct
24 Correct 2877 ms 5036 KB Output is correct
25 Correct 272 ms 3240 KB Output is correct
26 Correct 246 ms 3508 KB Output is correct
27 Correct 269 ms 3380 KB Output is correct
28 Correct 262 ms 3380 KB Output is correct
29 Correct 2354 ms 6980 KB Output is correct
30 Correct 2380 ms 7048 KB Output is correct
31 Correct 638 ms 8784 KB Output is correct
32 Correct 2004 ms 7316 KB Output is correct
33 Correct 2069 ms 7084 KB Output is correct
34 Correct 2830 ms 4680 KB Output is correct
35 Correct 2483 ms 6064 KB Output is correct
36 Correct 1986 ms 7172 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 240 ms 2996 KB Output is correct
2 Correct 245 ms 3904 KB Output is correct
3 Correct 246 ms 3892 KB Output is correct
4 Correct 265 ms 3924 KB Output is correct
5 Correct 578 ms 7612 KB Output is correct
6 Correct 1251 ms 3280 KB Output is correct
7 Correct 461 ms 8208 KB Output is correct
8 Correct 1131 ms 4016 KB Output is correct
9 Correct 3031 ms 5508 KB Output is correct
10 Correct 1861 ms 7740 KB Output is correct
11 Correct 2714 ms 3972 KB Output is correct
12 Correct 401 ms 9208 KB Output is correct
13 Correct 2319 ms 7492 KB Output is correct
14 Correct 2939 ms 5548 KB Output is correct
15 Correct 714 ms 8868 KB Output is correct
16 Correct 2075 ms 7600 KB Output is correct
17 Correct 963 ms 6092 KB Output is correct
18 Correct 1010 ms 6060 KB Output is correct
19 Correct 977 ms 6064 KB Output is correct
20 Correct 961 ms 6048 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 10 ms 632 KB Output is correct
4 Correct 10 ms 504 KB Output is correct
5 Correct 14 ms 888 KB Output is correct
6 Correct 17 ms 760 KB Output is correct
7 Correct 37 ms 632 KB Output is correct
8 Correct 70 ms 772 KB Output is correct
9 Correct 70 ms 760 KB Output is correct
10 Correct 32 ms 916 KB Output is correct
11 Correct 25 ms 764 KB Output is correct
12 Correct 27 ms 760 KB Output is correct
13 Correct 31 ms 888 KB Output is correct
14 Correct 74 ms 772 KB Output is correct
15 Correct 9 ms 504 KB Output is correct
16 Correct 12 ms 504 KB Output is correct
17 Correct 65 ms 824 KB Output is correct
18 Correct 46 ms 824 KB Output is correct
19 Correct 71 ms 652 KB Output is correct
20 Correct 80 ms 660 KB Output is correct
21 Correct 934 ms 4612 KB Output is correct
22 Correct 978 ms 5444 KB Output is correct
23 Correct 975 ms 5428 KB Output is correct
24 Correct 905 ms 5816 KB Output is correct
25 Correct 225 ms 8452 KB Output is correct
26 Correct 161 ms 8596 KB Output is correct
27 Correct 937 ms 5540 KB Output is correct
28 Correct 941 ms 5412 KB Output is correct
29 Correct 963 ms 5476 KB Output is correct
30 Correct 1116 ms 3320 KB Output is correct
31 Correct 1121 ms 3848 KB Output is correct
32 Correct 682 ms 6896 KB Output is correct
33 Correct 240 ms 2996 KB Output is correct
34 Correct 245 ms 3904 KB Output is correct
35 Correct 246 ms 3892 KB Output is correct
36 Correct 265 ms 3924 KB Output is correct
37 Correct 578 ms 7612 KB Output is correct
38 Correct 1251 ms 3280 KB Output is correct
39 Correct 461 ms 8208 KB Output is correct
40 Correct 1131 ms 4016 KB Output is correct
41 Correct 3031 ms 5508 KB Output is correct
42 Correct 1861 ms 7740 KB Output is correct
43 Correct 2714 ms 3972 KB Output is correct
44 Correct 401 ms 9208 KB Output is correct
45 Correct 2319 ms 7492 KB Output is correct
46 Correct 2939 ms 5548 KB Output is correct
47 Correct 714 ms 8868 KB Output is correct
48 Correct 2075 ms 7600 KB Output is correct
49 Correct 963 ms 6092 KB Output is correct
50 Correct 1010 ms 6060 KB Output is correct
51 Correct 977 ms 6064 KB Output is correct
52 Correct 961 ms 6048 KB Output is correct
53 Correct 270 ms 4056 KB Output is correct
54 Correct 270 ms 3832 KB Output is correct
55 Correct 271 ms 3808 KB Output is correct
56 Correct 249 ms 3940 KB Output is correct
57 Correct 1110 ms 4792 KB Output is correct
58 Correct 1143 ms 2616 KB Output is correct
59 Correct 941 ms 5968 KB Output is correct
60 Correct 1044 ms 2296 KB Output is correct
61 Correct 2285 ms 6608 KB Output is correct
62 Correct 945 ms 7824 KB Output is correct
63 Correct 527 ms 8084 KB Output is correct
64 Correct 851 ms 7816 KB Output is correct
65 Correct 2904 ms 3508 KB Output is correct
66 Correct 3033 ms 3280 KB Output is correct
67 Correct 2079 ms 6688 KB Output is correct
68 Correct 2609 ms 5388 KB Output is correct
69 Correct 991 ms 5276 KB Output is correct
70 Correct 963 ms 5172 KB Output is correct
71 Correct 957 ms 5176 KB Output is correct
72 Correct 962 ms 5280 KB Output is correct
73 Correct 3009 ms 3688 KB Output is correct
74 Correct 2790 ms 5396 KB Output is correct
75 Correct 203 ms 8392 KB Output is correct
76 Correct 491 ms 8200 KB Output is correct
77 Correct 264 ms 3044 KB Output is correct
78 Correct 249 ms 2868 KB Output is correct
79 Correct 276 ms 2868 KB Output is correct
80 Correct 246 ms 2836 KB Output is correct
81 Correct 2691 ms 5012 KB Output is correct
82 Correct 3064 ms 3804 KB Output is correct
83 Correct 2654 ms 3284 KB Output is correct
84 Correct 2711 ms 5228 KB Output is correct
85 Correct 2012 ms 6668 KB Output is correct
86 Correct 1883 ms 6124 KB Output is correct
87 Correct 2883 ms 4136 KB Output is correct
88 Correct 2602 ms 2928 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Output is correct
2 Correct 2 ms 376 KB Output is correct
3 Correct 10 ms 632 KB Output is correct
4 Correct 10 ms 504 KB Output is correct
5 Correct 14 ms 888 KB Output is correct
6 Correct 17 ms 760 KB Output is correct
7 Correct 37 ms 632 KB Output is correct
8 Correct 70 ms 772 KB Output is correct
9 Correct 70 ms 760 KB Output is correct
10 Correct 32 ms 916 KB Output is correct
11 Correct 25 ms 764 KB Output is correct
12 Correct 27 ms 760 KB Output is correct
13 Correct 31 ms 888 KB Output is correct
14 Correct 74 ms 772 KB Output is correct
15 Correct 9 ms 504 KB Output is correct
16 Correct 12 ms 504 KB Output is correct
17 Correct 65 ms 824 KB Output is correct
18 Correct 46 ms 824 KB Output is correct
19 Correct 71 ms 652 KB Output is correct
20 Correct 80 ms 660 KB Output is correct
21 Correct 934 ms 4612 KB Output is correct
22 Correct 978 ms 5444 KB Output is correct
23 Correct 975 ms 5428 KB Output is correct
24 Correct 905 ms 5816 KB Output is correct
25 Correct 225 ms 8452 KB Output is correct
26 Correct 161 ms 8596 KB Output is correct
27 Correct 937 ms 5540 KB Output is correct
28 Correct 941 ms 5412 KB Output is correct
29 Correct 963 ms 5476 KB Output is correct
30 Correct 1116 ms 3320 KB Output is correct
31 Correct 1121 ms 3848 KB Output is correct
32 Correct 682 ms 6896 KB Output is correct
33 Correct 266 ms 2504 KB Output is correct
34 Correct 233 ms 3328 KB Output is correct
35 Correct 328 ms 3336 KB Output is correct
36 Correct 242 ms 3376 KB Output is correct
37 Correct 445 ms 6804 KB Output is correct
38 Correct 561 ms 6160 KB Output is correct
39 Correct 511 ms 6532 KB Output is correct
40 Correct 165 ms 8584 KB Output is correct
41 Correct 645 ms 8340 KB Output is correct
42 Correct 1895 ms 7012 KB Output is correct
43 Correct 1501 ms 3504 KB Output is correct
44 Correct 1853 ms 7224 KB Output is correct
45 Correct 2208 ms 6872 KB Output is correct
46 Correct 2849 ms 4508 KB Output is correct
47 Correct 2859 ms 4296 KB Output is correct
48 Correct 2725 ms 3692 KB Output is correct
49 Correct 695 ms 5408 KB Output is correct
50 Correct 653 ms 5536 KB Output is correct
51 Correct 672 ms 5684 KB Output is correct
52 Correct 678 ms 5412 KB Output is correct
53 Correct 1893 ms 3320 KB Output is correct
54 Correct 2891 ms 5012 KB Output is correct
55 Correct 2684 ms 6808 KB Output is correct
56 Correct 2877 ms 5036 KB Output is correct
57 Correct 272 ms 3240 KB Output is correct
58 Correct 246 ms 3508 KB Output is correct
59 Correct 269 ms 3380 KB Output is correct
60 Correct 262 ms 3380 KB Output is correct
61 Correct 2354 ms 6980 KB Output is correct
62 Correct 2380 ms 7048 KB Output is correct
63 Correct 638 ms 8784 KB Output is correct
64 Correct 2004 ms 7316 KB Output is correct
65 Correct 2069 ms 7084 KB Output is correct
66 Correct 2830 ms 4680 KB Output is correct
67 Correct 2483 ms 6064 KB Output is correct
68 Correct 1986 ms 7172 KB Output is correct
69 Correct 240 ms 2996 KB Output is correct
70 Correct 245 ms 3904 KB Output is correct
71 Correct 246 ms 3892 KB Output is correct
72 Correct 265 ms 3924 KB Output is correct
73 Correct 578 ms 7612 KB Output is correct
74 Correct 1251 ms 3280 KB Output is correct
75 Correct 461 ms 8208 KB Output is correct
76 Correct 1131 ms 4016 KB Output is correct
77 Correct 3031 ms 5508 KB Output is correct
78 Correct 1861 ms 7740 KB Output is correct
79 Correct 2714 ms 3972 KB Output is correct
80 Correct 401 ms 9208 KB Output is correct
81 Correct 2319 ms 7492 KB Output is correct
82 Correct 2939 ms 5548 KB Output is correct
83 Correct 714 ms 8868 KB Output is correct
84 Correct 2075 ms 7600 KB Output is correct
85 Correct 963 ms 6092 KB Output is correct
86 Correct 1010 ms 6060 KB Output is correct
87 Correct 977 ms 6064 KB Output is correct
88 Correct 961 ms 6048 KB Output is correct
89 Correct 270 ms 4056 KB Output is correct
90 Correct 270 ms 3832 KB Output is correct
91 Correct 271 ms 3808 KB Output is correct
92 Correct 249 ms 3940 KB Output is correct
93 Correct 1110 ms 4792 KB Output is correct
94 Correct 1143 ms 2616 KB Output is correct
95 Correct 941 ms 5968 KB Output is correct
96 Correct 1044 ms 2296 KB Output is correct
97 Correct 2285 ms 6608 KB Output is correct
98 Correct 945 ms 7824 KB Output is correct
99 Correct 527 ms 8084 KB Output is correct
100 Correct 851 ms 7816 KB Output is correct
101 Correct 2904 ms 3508 KB Output is correct
102 Correct 3033 ms 3280 KB Output is correct
103 Correct 2079 ms 6688 KB Output is correct
104 Correct 2609 ms 5388 KB Output is correct
105 Correct 991 ms 5276 KB Output is correct
106 Correct 963 ms 5172 KB Output is correct
107 Correct 957 ms 5176 KB Output is correct
108 Correct 962 ms 5280 KB Output is correct
109 Correct 3009 ms 3688 KB Output is correct
110 Correct 2790 ms 5396 KB Output is correct
111 Correct 203 ms 8392 KB Output is correct
112 Correct 491 ms 8200 KB Output is correct
113 Correct 264 ms 3044 KB Output is correct
114 Correct 249 ms 2868 KB Output is correct
115 Correct 276 ms 2868 KB Output is correct
116 Correct 246 ms 2836 KB Output is correct
117 Correct 2691 ms 5012 KB Output is correct
118 Correct 3064 ms 3804 KB Output is correct
119 Correct 2654 ms 3284 KB Output is correct
120 Correct 2711 ms 5228 KB Output is correct
121 Correct 2012 ms 6668 KB Output is correct
122 Correct 1883 ms 6124 KB Output is correct
123 Correct 2883 ms 4136 KB Output is correct
124 Correct 2602 ms 2928 KB Output is correct
125 Correct 693 ms 4036 KB Output is correct
126 Correct 720 ms 4148 KB Output is correct
127 Correct 882 ms 4144 KB Output is correct
128 Correct 718 ms 4044 KB Output is correct
129 Correct 659 ms 4112 KB Output is correct
130 Correct 746 ms 4004 KB Output is correct
131 Correct 2529 ms 3188 KB Output is correct
132 Correct 2784 ms 7736 KB Output is correct
133 Runtime error 114 ms 19220 KB Execution killed with signal 11 (could be triggered by violating memory limits)
134 Halted 0 ms 0 KB -