Submission #758597

# Submission time Handle Problem Language Result Execution time Memory
758597 2023-06-15T00:02:14 Z scanhex Segments (IZhO18_segments) C++17
75 / 100
4051 ms 41620 KB
#include <bits/stdc++.h>

using namespace std;
using nagai = long long;

struct dss {
	vector<pair<int,int>> segs;
	void insert(int l, int r) {
		segs.push_back({l, r});
	}
	int get(int l, int r, int k) {
		if (k == 0) return segs.size();
		int res = 0;
		for (auto& x : segs) {
			int ll = max(x.first, l), rr = min(x.second, r); 
			if (rr - ll + 1 >= k)
				++res;
		}
		return res;
	}
};

const int oo = 0x3f3f3f3f;
 
struct static1d {
	vector<int> coords;
	void clear() {
		vector<int>{}.swap(coords);
	}

	void add(int c) {
		coords.push_back(c);
	}

	void finalize() {
	}

	int get(int l, int r) {
		if (l > r) return 0;
		auto itr = upper_bound(coords.begin(), coords.end(), r);
		auto itl = lower_bound(coords.begin(), coords.end(), l);
		//cerr << "coords\n";
		//for(auto& x : coords) 
			//cerr << x << ' ';
		//cerr << '\n';
		//cerr << l << ' ' << r << ' ' << itr - itl << '\n';
		return itr - itl;
	}
};

bool ycmp(pair<int, int> a, pair<int, int> b) {
	if (a.second != b.second)
		return a.second < b.second;
	return a.first < b.first;
}

struct static2d {
	vector<static1d> v;
	vector<int> xs;

	void add(int x, int y) {
		for (++x; x < v.size(); x = (x | x - 1) + 1)
			v[x].add(y);
	}

	void build(vector<pair<int,int>> pts) {
		xs.clear();
		for (auto& x : v) 
			x.clear();
		for (auto& p : pts) 
			xs.push_back(p.first);
		sort(xs.begin(), xs.end());
		xs.erase(unique(xs.begin(), xs.end()), xs.end());
		v.resize(xs.size() + 1);
		for (auto p : pts) {
			add(lower_bound(xs.begin(), xs.end(), p.first) - xs.begin(), p.second);
		}
		for (int i = 0; i < v.size(); ++i) 
			v[i].finalize();
	}

	int get(int xr, int y1, int y2) {
		++xr;
		int xrr = xr;
		xr = lower_bound(xs.begin(), xs.end(), xr) - xs.begin();
		int res = 0;
		for (; xr; xr &= xr - 1) 
			res += v[xr].get(y1, y2);
		//cerr << xrr << ' ' << y1 << ' ' << y2 << ' ' << res << '\n';
		return res;
	}

	// all inclusive
	int get(int x1, int x2, int y1, int y2) {
		if (x1 > x2) return 0;
		return get(x2, y1, y2) - get(x1 - 1, y1, y2);
	}
};

const int BL = 3000;

struct rofl2d {
	vector<pair<int,int>> all;
	vector<pair<int,int>> block;
	vector<pair<int,int>> erblock;
	vector<pair<int, int>> newall;
	static2d st;

	void check_rebuild() {
		if (block.size() + erblock.size() >= BL) {
			sort(block.begin(), block.end(), ycmp);
			newall.resize(all.size() + block.size());
			merge(all.begin(), all.end(), block.begin(), block.end(), newall.begin(), ycmp);
			sort(erblock.begin(), erblock.end(), ycmp);
			all.clear();
			int ptr = 0; 
			for (auto x : erblock) {
				 while (ptr < newall.size() && ycmp(newall[ptr], x))
					 all.push_back(newall[ptr++]);
				 // always true? 
				 ++ptr;
			}
			while (ptr < newall.size())
				all.push_back(newall[ptr++]);
			block.clear();
			erblock.clear();
			st.build(all);
		}
	}
	
	void insert(int x, int y) {
		block.push_back({x, y});
		check_rebuild();
	}

	void erase(int x, int y) {
		erblock.push_back({x, y});
		check_rebuild();
	}

	int get(int x1, int x2, int y1, int y2) {
		int res = st.get(x1, x2, y1, y2);
		for (auto p : block) 
			if (x1 <= p.first && p.first <= x2 && y1 <= p.second && p.second <= y2) 
				++res;
		for (auto p : erblock) 
			if (x1 <= p.first && p.first <= x2 && y1 <= p.second && p.second <= y2) 
				--res;
		return res;
	}
};


struct ds {
	int tot = 0;
	rofl2d rofl_l, rofl_r;
	rofl2d rofl_len;
	void insert(int l, int r) {
		++tot;
		rofl_l.insert(l, r - l);
		rofl_r.insert(r, r - l);
		rofl_len.insert(0, r - l);
	}
	void erase(int l, int r) {
		--tot;
		rofl_l.erase(l, r - l);
		rofl_r.erase(r, r - l);
		rofl_len.erase(0, r - l);
	}
	int get(int l, int r, int k) {
		if (r - l + 1 < k) return 0;
		if (k == 0) return tot;
		int res = tot;
		//cerr << "rofl_l" << '\n';
		res -= rofl_l.get(r - k + 2, oo, k - 1, oo);
		//cerr << "rofl_r" << '\n';
		res -= rofl_r.get(0, l + k - 2, k - 1, oo);
		//cerr << "rofl_len" << '\n';
		res -= rofl_len.get(0, 0, 0, k - 2);
		return res;
	}
};

void stress() {
	int C = 5;
	for (int i = 0; i < 10000; ++i) {
		ds smart;
		dss stupid;
		stringstream ss;
		for (int i = 0; i < 10; ++i) {
			int x = rand() % C, y = rand() % C;
			if (x > y) swap(x, y);
			ss << "1 " << x << ' ' << y << '\n';
			smart.insert(x, y);
			stupid.insert(x, y);

			int a = rand() % C, b = rand() % C, k = rand() % C;
			if (a > b) swap(a, b);
			if (smart.get(a, b, k) != stupid.get(a, b, k)) {
				ss << smart.get(a, b, k) << ' ' << stupid.get(a, b, k) << '\n';
				ss << "3 " << a << ' ' << b << ' ' << k << '\n';
				cerr << ss.str();
				exit(1);
			}
		}
	}
	exit(0);
}


int main() {
	//stress();
	ios::sync_with_stdio(false);
	cin.tie(0);
	int n, t; 
	cin >> n >> t; 
	int lastans = 0;
	vector<pair<int, int>> segs;
	ds add;
	while (n--) {
		int tt;
		cin >> tt; 
		if (tt == 1) {
			int a, b;
			cin >> a >> b; 
			a ^= t * lastans;
			b ^= t * lastans;
			if (a > b) swap(a, b);
			segs.push_back({a, b});
			add.insert(a, b);
		}
		else if (tt == 2) {
			int id; 
			cin >> id; 
			--id;
			add.erase(segs[id].first, segs[id].second);
		}
		else {
			int a, b, k;
			cin >> a >> b >> k;
			a ^= t * lastans;
			b ^= t * lastans;
			if (a > b) swap(a, b);
			lastans = add.get(a, b, k);
			cout << lastans << '\n';
		}
	}
}

Compilation message

segments.cpp: In member function 'void static2d::add(int, int)':
segments.cpp:62:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<static1d>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   62 |   for (++x; x < v.size(); x = (x | x - 1) + 1)
      |             ~~^~~~~~~~~~
segments.cpp:62:38: warning: suggest parentheses around arithmetic in operand of '|' [-Wparentheses]
   62 |   for (++x; x < v.size(); x = (x | x - 1) + 1)
      |                                    ~~^~~
segments.cpp: In member function 'void static2d::build(std::vector<std::pair<int, int> >)':
segments.cpp:78:21: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<static1d>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   78 |   for (int i = 0; i < v.size(); ++i)
      |                   ~~^~~~~~~~~~
segments.cpp: In member function 'int static2d::get(int, int, int)':
segments.cpp:84:7: warning: unused variable 'xrr' [-Wunused-variable]
   84 |   int xrr = xr;
      |       ^~~
segments.cpp: In member function 'void rofl2d::check_rebuild()':
segments.cpp:118:17: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  118 |      while (ptr < newall.size() && ycmp(newall[ptr], x))
      |             ~~~~^~~~~~~~~~~~~~~
segments.cpp:123:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  123 |    while (ptr < newall.size())
      |           ~~~~^~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 20 ms 452 KB Output is correct
4 Correct 23 ms 468 KB Output is correct
5 Correct 14 ms 1152 KB Output is correct
6 Correct 13 ms 1124 KB Output is correct
7 Correct 19 ms 636 KB Output is correct
8 Correct 10 ms 1104 KB Output is correct
9 Correct 11 ms 980 KB Output is correct
10 Correct 6 ms 1108 KB Output is correct
11 Correct 49 ms 484 KB Output is correct
12 Correct 48 ms 468 KB Output is correct
13 Correct 7 ms 1108 KB Output is correct
14 Correct 15 ms 980 KB Output is correct
15 Correct 19 ms 468 KB Output is correct
16 Correct 18 ms 468 KB Output is correct
17 Correct 18 ms 688 KB Output is correct
18 Correct 8 ms 1108 KB Output is correct
19 Correct 17 ms 724 KB Output is correct
20 Correct 16 ms 812 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1243 ms 13072 KB Output is correct
2 Correct 1255 ms 13184 KB Output is correct
3 Correct 1268 ms 12936 KB Output is correct
4 Correct 910 ms 14968 KB Output is correct
5 Correct 1376 ms 25792 KB Output is correct
6 Correct 1516 ms 26408 KB Output is correct
7 Correct 1374 ms 12908 KB Output is correct
8 Correct 1311 ms 12944 KB Output is correct
9 Correct 1294 ms 12980 KB Output is correct
10 Correct 1143 ms 5476 KB Output is correct
11 Correct 392 ms 7588 KB Output is correct
12 Correct 1118 ms 20336 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 448 ms 1192 KB Output is correct
2 Correct 422 ms 1232 KB Output is correct
3 Correct 430 ms 1232 KB Output is correct
4 Correct 449 ms 1228 KB Output is correct
5 Correct 1237 ms 20540 KB Output is correct
6 Correct 685 ms 15816 KB Output is correct
7 Correct 1240 ms 16908 KB Output is correct
8 Correct 1298 ms 25680 KB Output is correct
9 Correct 1375 ms 25800 KB Output is correct
10 Correct 1116 ms 17464 KB Output is correct
11 Correct 470 ms 2156 KB Output is correct
12 Correct 1151 ms 20124 KB Output is correct
13 Correct 991 ms 15436 KB Output is correct
14 Correct 696 ms 8044 KB Output is correct
15 Correct 640 ms 7372 KB Output is correct
16 Correct 546 ms 4788 KB Output is correct
17 Correct 1129 ms 13272 KB Output is correct
18 Correct 1130 ms 12740 KB Output is correct
19 Correct 1142 ms 13120 KB Output is correct
20 Correct 1127 ms 13008 KB Output is correct
21 Correct 472 ms 2524 KB Output is correct
22 Correct 839 ms 10604 KB Output is correct
23 Correct 954 ms 14584 KB Output is correct
24 Correct 841 ms 11440 KB Output is correct
25 Correct 400 ms 1224 KB Output is correct
26 Correct 396 ms 1132 KB Output is correct
27 Correct 397 ms 1224 KB Output is correct
28 Correct 404 ms 1236 KB Output is correct
29 Correct 1038 ms 15336 KB Output is correct
30 Correct 1012 ms 15120 KB Output is correct
31 Correct 1313 ms 24820 KB Output is correct
32 Correct 1074 ms 17396 KB Output is correct
33 Correct 987 ms 16272 KB Output is correct
34 Correct 605 ms 7144 KB Output is correct
35 Correct 918 ms 13592 KB Output is correct
36 Correct 1061 ms 17212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 397 ms 1324 KB Output is correct
2 Correct 404 ms 1124 KB Output is correct
3 Correct 406 ms 1196 KB Output is correct
4 Correct 410 ms 1272 KB Output is correct
5 Correct 1189 ms 21604 KB Output is correct
6 Correct 1278 ms 3728 KB Output is correct
7 Correct 1232 ms 23044 KB Output is correct
8 Correct 1732 ms 5300 KB Output is correct
9 Correct 826 ms 10436 KB Output is correct
10 Correct 1210 ms 21324 KB Output is correct
11 Correct 566 ms 4504 KB Output is correct
12 Correct 1326 ms 26408 KB Output is correct
13 Correct 1000 ms 16012 KB Output is correct
14 Correct 752 ms 8516 KB Output is correct
15 Correct 1302 ms 23904 KB Output is correct
16 Correct 1058 ms 16500 KB Output is correct
17 Correct 1179 ms 13248 KB Output is correct
18 Correct 1185 ms 13108 KB Output is correct
19 Correct 1205 ms 13388 KB Output is correct
20 Correct 1159 ms 13520 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 20 ms 452 KB Output is correct
4 Correct 23 ms 468 KB Output is correct
5 Correct 14 ms 1152 KB Output is correct
6 Correct 13 ms 1124 KB Output is correct
7 Correct 19 ms 636 KB Output is correct
8 Correct 10 ms 1104 KB Output is correct
9 Correct 11 ms 980 KB Output is correct
10 Correct 6 ms 1108 KB Output is correct
11 Correct 49 ms 484 KB Output is correct
12 Correct 48 ms 468 KB Output is correct
13 Correct 7 ms 1108 KB Output is correct
14 Correct 15 ms 980 KB Output is correct
15 Correct 19 ms 468 KB Output is correct
16 Correct 18 ms 468 KB Output is correct
17 Correct 18 ms 688 KB Output is correct
18 Correct 8 ms 1108 KB Output is correct
19 Correct 17 ms 724 KB Output is correct
20 Correct 16 ms 812 KB Output is correct
21 Correct 1243 ms 13072 KB Output is correct
22 Correct 1255 ms 13184 KB Output is correct
23 Correct 1268 ms 12936 KB Output is correct
24 Correct 910 ms 14968 KB Output is correct
25 Correct 1376 ms 25792 KB Output is correct
26 Correct 1516 ms 26408 KB Output is correct
27 Correct 1374 ms 12908 KB Output is correct
28 Correct 1311 ms 12944 KB Output is correct
29 Correct 1294 ms 12980 KB Output is correct
30 Correct 1143 ms 5476 KB Output is correct
31 Correct 392 ms 7588 KB Output is correct
32 Correct 1118 ms 20336 KB Output is correct
33 Correct 397 ms 1324 KB Output is correct
34 Correct 404 ms 1124 KB Output is correct
35 Correct 406 ms 1196 KB Output is correct
36 Correct 410 ms 1272 KB Output is correct
37 Correct 1189 ms 21604 KB Output is correct
38 Correct 1278 ms 3728 KB Output is correct
39 Correct 1232 ms 23044 KB Output is correct
40 Correct 1732 ms 5300 KB Output is correct
41 Correct 826 ms 10436 KB Output is correct
42 Correct 1210 ms 21324 KB Output is correct
43 Correct 566 ms 4504 KB Output is correct
44 Correct 1326 ms 26408 KB Output is correct
45 Correct 1000 ms 16012 KB Output is correct
46 Correct 752 ms 8516 KB Output is correct
47 Correct 1302 ms 23904 KB Output is correct
48 Correct 1058 ms 16500 KB Output is correct
49 Correct 1179 ms 13248 KB Output is correct
50 Correct 1185 ms 13108 KB Output is correct
51 Correct 1205 ms 13388 KB Output is correct
52 Correct 1159 ms 13520 KB Output is correct
53 Correct 406 ms 1152 KB Output is correct
54 Correct 423 ms 1260 KB Output is correct
55 Correct 411 ms 1208 KB Output is correct
56 Correct 402 ms 1136 KB Output is correct
57 Correct 1256 ms 8276 KB Output is correct
58 Correct 214 ms 3084 KB Output is correct
59 Correct 985 ms 16032 KB Output is correct
60 Correct 1153 ms 2356 KB Output is correct
61 Correct 1048 ms 16380 KB Output is correct
62 Correct 1294 ms 23120 KB Output is correct
63 Correct 1345 ms 25188 KB Output is correct
64 Correct 1330 ms 25028 KB Output is correct
65 Correct 617 ms 5936 KB Output is correct
66 Correct 581 ms 4748 KB Output is correct
67 Correct 1106 ms 16820 KB Output is correct
68 Correct 942 ms 13532 KB Output is correct
69 Correct 1175 ms 12852 KB Output is correct
70 Correct 1150 ms 12596 KB Output is correct
71 Correct 1207 ms 13136 KB Output is correct
72 Correct 1206 ms 13104 KB Output is correct
73 Correct 685 ms 7204 KB Output is correct
74 Correct 950 ms 13296 KB Output is correct
75 Correct 1405 ms 29112 KB Output is correct
76 Correct 1350 ms 26112 KB Output is correct
77 Correct 413 ms 1236 KB Output is correct
78 Correct 405 ms 1224 KB Output is correct
79 Correct 402 ms 1272 KB Output is correct
80 Correct 400 ms 1156 KB Output is correct
81 Correct 955 ms 12692 KB Output is correct
82 Correct 707 ms 7232 KB Output is correct
83 Correct 573 ms 4048 KB Output is correct
84 Correct 972 ms 12704 KB Output is correct
85 Correct 1108 ms 16508 KB Output is correct
86 Correct 1083 ms 19184 KB Output is correct
87 Correct 815 ms 10356 KB Output is correct
88 Correct 554 ms 4424 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB Output is correct
2 Correct 1 ms 212 KB Output is correct
3 Correct 20 ms 452 KB Output is correct
4 Correct 23 ms 468 KB Output is correct
5 Correct 14 ms 1152 KB Output is correct
6 Correct 13 ms 1124 KB Output is correct
7 Correct 19 ms 636 KB Output is correct
8 Correct 10 ms 1104 KB Output is correct
9 Correct 11 ms 980 KB Output is correct
10 Correct 6 ms 1108 KB Output is correct
11 Correct 49 ms 484 KB Output is correct
12 Correct 48 ms 468 KB Output is correct
13 Correct 7 ms 1108 KB Output is correct
14 Correct 15 ms 980 KB Output is correct
15 Correct 19 ms 468 KB Output is correct
16 Correct 18 ms 468 KB Output is correct
17 Correct 18 ms 688 KB Output is correct
18 Correct 8 ms 1108 KB Output is correct
19 Correct 17 ms 724 KB Output is correct
20 Correct 16 ms 812 KB Output is correct
21 Correct 1243 ms 13072 KB Output is correct
22 Correct 1255 ms 13184 KB Output is correct
23 Correct 1268 ms 12936 KB Output is correct
24 Correct 910 ms 14968 KB Output is correct
25 Correct 1376 ms 25792 KB Output is correct
26 Correct 1516 ms 26408 KB Output is correct
27 Correct 1374 ms 12908 KB Output is correct
28 Correct 1311 ms 12944 KB Output is correct
29 Correct 1294 ms 12980 KB Output is correct
30 Correct 1143 ms 5476 KB Output is correct
31 Correct 392 ms 7588 KB Output is correct
32 Correct 1118 ms 20336 KB Output is correct
33 Correct 448 ms 1192 KB Output is correct
34 Correct 422 ms 1232 KB Output is correct
35 Correct 430 ms 1232 KB Output is correct
36 Correct 449 ms 1228 KB Output is correct
37 Correct 1237 ms 20540 KB Output is correct
38 Correct 685 ms 15816 KB Output is correct
39 Correct 1240 ms 16908 KB Output is correct
40 Correct 1298 ms 25680 KB Output is correct
41 Correct 1375 ms 25800 KB Output is correct
42 Correct 1116 ms 17464 KB Output is correct
43 Correct 470 ms 2156 KB Output is correct
44 Correct 1151 ms 20124 KB Output is correct
45 Correct 991 ms 15436 KB Output is correct
46 Correct 696 ms 8044 KB Output is correct
47 Correct 640 ms 7372 KB Output is correct
48 Correct 546 ms 4788 KB Output is correct
49 Correct 1129 ms 13272 KB Output is correct
50 Correct 1130 ms 12740 KB Output is correct
51 Correct 1142 ms 13120 KB Output is correct
52 Correct 1127 ms 13008 KB Output is correct
53 Correct 472 ms 2524 KB Output is correct
54 Correct 839 ms 10604 KB Output is correct
55 Correct 954 ms 14584 KB Output is correct
56 Correct 841 ms 11440 KB Output is correct
57 Correct 400 ms 1224 KB Output is correct
58 Correct 396 ms 1132 KB Output is correct
59 Correct 397 ms 1224 KB Output is correct
60 Correct 404 ms 1236 KB Output is correct
61 Correct 1038 ms 15336 KB Output is correct
62 Correct 1012 ms 15120 KB Output is correct
63 Correct 1313 ms 24820 KB Output is correct
64 Correct 1074 ms 17396 KB Output is correct
65 Correct 987 ms 16272 KB Output is correct
66 Correct 605 ms 7144 KB Output is correct
67 Correct 918 ms 13592 KB Output is correct
68 Correct 1061 ms 17212 KB Output is correct
69 Correct 397 ms 1324 KB Output is correct
70 Correct 404 ms 1124 KB Output is correct
71 Correct 406 ms 1196 KB Output is correct
72 Correct 410 ms 1272 KB Output is correct
73 Correct 1189 ms 21604 KB Output is correct
74 Correct 1278 ms 3728 KB Output is correct
75 Correct 1232 ms 23044 KB Output is correct
76 Correct 1732 ms 5300 KB Output is correct
77 Correct 826 ms 10436 KB Output is correct
78 Correct 1210 ms 21324 KB Output is correct
79 Correct 566 ms 4504 KB Output is correct
80 Correct 1326 ms 26408 KB Output is correct
81 Correct 1000 ms 16012 KB Output is correct
82 Correct 752 ms 8516 KB Output is correct
83 Correct 1302 ms 23904 KB Output is correct
84 Correct 1058 ms 16500 KB Output is correct
85 Correct 1179 ms 13248 KB Output is correct
86 Correct 1185 ms 13108 KB Output is correct
87 Correct 1205 ms 13388 KB Output is correct
88 Correct 1159 ms 13520 KB Output is correct
89 Correct 406 ms 1152 KB Output is correct
90 Correct 423 ms 1260 KB Output is correct
91 Correct 411 ms 1208 KB Output is correct
92 Correct 402 ms 1136 KB Output is correct
93 Correct 1256 ms 8276 KB Output is correct
94 Correct 214 ms 3084 KB Output is correct
95 Correct 985 ms 16032 KB Output is correct
96 Correct 1153 ms 2356 KB Output is correct
97 Correct 1048 ms 16380 KB Output is correct
98 Correct 1294 ms 23120 KB Output is correct
99 Correct 1345 ms 25188 KB Output is correct
100 Correct 1330 ms 25028 KB Output is correct
101 Correct 617 ms 5936 KB Output is correct
102 Correct 581 ms 4748 KB Output is correct
103 Correct 1106 ms 16820 KB Output is correct
104 Correct 942 ms 13532 KB Output is correct
105 Correct 1175 ms 12852 KB Output is correct
106 Correct 1150 ms 12596 KB Output is correct
107 Correct 1207 ms 13136 KB Output is correct
108 Correct 1206 ms 13104 KB Output is correct
109 Correct 685 ms 7204 KB Output is correct
110 Correct 950 ms 13296 KB Output is correct
111 Correct 1405 ms 29112 KB Output is correct
112 Correct 1350 ms 26112 KB Output is correct
113 Correct 413 ms 1236 KB Output is correct
114 Correct 405 ms 1224 KB Output is correct
115 Correct 402 ms 1272 KB Output is correct
116 Correct 400 ms 1156 KB Output is correct
117 Correct 955 ms 12692 KB Output is correct
118 Correct 707 ms 7232 KB Output is correct
119 Correct 573 ms 4048 KB Output is correct
120 Correct 972 ms 12704 KB Output is correct
121 Correct 1108 ms 16508 KB Output is correct
122 Correct 1083 ms 19184 KB Output is correct
123 Correct 815 ms 10356 KB Output is correct
124 Correct 554 ms 4424 KB Output is correct
125 Correct 800 ms 1804 KB Output is correct
126 Correct 825 ms 1916 KB Output is correct
127 Correct 827 ms 1860 KB Output is correct
128 Correct 839 ms 1776 KB Output is correct
129 Correct 799 ms 1752 KB Output is correct
130 Correct 856 ms 1776 KB Output is correct
131 Correct 3295 ms 6040 KB Output is correct
132 Correct 2279 ms 24052 KB Output is correct
133 Correct 3470 ms 34664 KB Output is correct
134 Correct 3763 ms 8568 KB Output is correct
135 Runtime error 4051 ms 41620 KB Memory limit exceeded
136 Halted 0 ms 0 KB -