Submission #36588

# Submission time Handle Problem Language Result Execution time Memory
36588 2017-12-11T13:23:27 Z cheater2k Aliens (IOI16_aliens) C++14
100 / 100
229 ms 7588 KB
#include "aliens.h"
#include <bits/stdc++.h>
using namespace std;

#define fi first
#define se second

struct ConvexHullTrick {
	// slopes are different from each other
	struct Line {
		long long a; long long b; int id; // b <= 1e12, a >= -2e6
		// id is the ID of the corresponding segment, which is useful for tracing
		Line(long long a=0, long long b=0, int id=0): a(a), b(b), id(id) {}
	};
	deque<Line> L;

	ConvexHullTrick() { L.clear(); }

	bool bad(Line l1, Line l2, Line l3) {
		return 1LL * (l1.b - l3.b) * (l2.a - l1.a) < 1LL * (l1.b - l2.b) * (l3.a - l1.a); // ~ [-2e18, 2e18]
	}
	void add(long long a, long long b, int id) {
		Line d = Line(a, b, id);
		while(L.size() >= 2 && bad(L[L.size()-2], L[L.size()-1], d)) L.pop_back();
		L.push_back(d);
	}
	long long func(Line &d, long long &x) {
		return 1LL * d.a * x + d.b;
	}
	pair<long long,int> get(long long x) {
		while(L.size() >= 2 && func(L[0], x) > func(L[1], x)) L.pop_front(); // L[0] is not good anymore
		return make_pair(func(L[0], x), L[0].id); // get the minimum ID
	}
} cht;

namespace Solver {
	const int N = 100005;
	pair<int, int> inp[N]; // input segments
	int l[N], r[N]; // leftmost and rightmost points of the segments
	int n, m, k;
	long long dp[N];
	int trace[N];

	void process() { // build new segments
		// no segment is contained by another segment
		sort(inp, inp + n, [&](pair<int,int> x, pair<int,int> y) {
			return x.fi < y.fi || (x.fi == y.fi && x.se > y.se);
		});
		int rmax = -1;
		int cnt = 0;
		for (int i = 0; i < n; ++i) {
			if (rmax < inp[i].se) {
				rmax = inp[i].se;
				++cnt;
				l[cnt] = inp[i].fi;
				r[cnt] = inp[i].se;
			}
		}
		n = cnt; // 1-based index now
	}

	int check(long long cost) {
		// reset
		cht = ConvexHullTrick();
		memset(dp, 0, sizeof dp);
		memset(trace, 0, sizeof trace);

		// dp[i] = (dp[j-1] - (max(0, r[j-1] - l[j]) ^ 2) + l[j] ^ 2) + (-2 * l[j]) * r[i] + r[i] ^ 2 (j <= i)

		// solve
		cht.add(-2 * l[1], 1LL * l[1] * l[1], 0);
		for (int i = 1; i <= n; ++i) {
			pair<long long, int> g = cht.get(r[i]);
			dp[i] = g.fi + 1LL * r[i] * r[i] + cost;
			trace[i] = g.se;
			long long cur = dp[i] - (1LL * max(0, r[i] - l[i+1]) * max(0, r[i] - l[i+1])) + 1LL * l[i+1] * l[i+1]; // b
			cht.add(-2 * l[i+1], cur, i);
		}

		// trace
		int pos = n, cnt = 0;
		while(pos) ++cnt, pos = trace[pos];
		return cnt;
	}

	long long solve() {
		process();
		// for (int i = 1; i <= n; ++i) {
		// 	printf("l[%d] = %d, r[%d] = %d\n", i, l[i], i, r[i]);
		// }

		long long l = 0, r = 1e13; // cost is positive
		while(l < r) {
			long long mid = ((l + r) >> 1);
			if (check(mid) <= k) r = mid; else l = mid + 1;
		}
		check(l);
		return dp[n] - l * k;
	}
};

long long take_photos(int n, int m, int k, vector<int> r, vector<int> c) {
	// init
	Solver::n = n;
	Solver::m = m; // square: [0...m-1][0...m-1]
	Solver::k = k;
	for (int i = 0; i < n; ++i) {
		if (r[i] > c[i]) swap(r[i], c[i]); // [r,c] is the corresponding segment in the diagonal
		Solver::inp[i].fi = r[i];
		Solver::inp[i].se = ++c[i];
	}

	// solve
	return Solver::solve();
}
# Verdict Execution time Memory Grader output
1 Correct 3 ms 4756 KB Correct answer: answer = 4
2 Correct 3 ms 4756 KB Correct answer: answer = 4
3 Correct 0 ms 4756 KB Correct answer: answer = 4
4 Correct 3 ms 4756 KB Correct answer: answer = 12
5 Correct 3 ms 4756 KB Correct answer: answer = 52
6 Correct 0 ms 4756 KB Correct answer: answer = 210
7 Correct 3 ms 4756 KB Correct answer: answer = 88
8 Correct 3 ms 4756 KB Correct answer: answer = 7696
9 Correct 3 ms 4756 KB Correct answer: answer = 1
10 Correct 3 ms 4756 KB Correct answer: answer = 2374
11 Correct 3 ms 4756 KB Correct answer: answer = 9502
12 Correct 3 ms 4756 KB Correct answer: answer = 49
13 Correct 3 ms 4756 KB Correct answer: answer = 151
14 Correct 3 ms 4756 KB Correct answer: answer = 7550
15 Correct 0 ms 4756 KB Correct answer: answer = 7220
16 Correct 3 ms 4756 KB Correct answer: answer = 7550
17 Correct 3 ms 4756 KB Correct answer: answer = 10000
18 Correct 3 ms 4756 KB Correct answer: answer = 10000
19 Correct 3 ms 4756 KB Correct answer: answer = 624
20 Correct 3 ms 4756 KB Correct answer: answer = 10000
# Verdict Execution time Memory Grader output
1 Correct 3 ms 4756 KB Correct answer: answer = 1
2 Correct 3 ms 4756 KB Correct answer: answer = 4
3 Correct 3 ms 4756 KB Correct answer: answer = 1
4 Correct 3 ms 4756 KB Correct answer: answer = 5
5 Correct 3 ms 4756 KB Correct answer: answer = 41
6 Correct 3 ms 4756 KB Correct answer: answer = 71923
7 Correct 3 ms 4756 KB Correct answer: answer = 77137
8 Correct 3 ms 4756 KB Correct answer: answer = 764
9 Correct 3 ms 4756 KB Correct answer: answer = 250000
10 Correct 3 ms 4756 KB Correct answer: answer = 500
11 Correct 3 ms 4756 KB Correct answer: answer = 32
12 Correct 3 ms 4756 KB Correct answer: answer = 130050
13 Correct 3 ms 4756 KB Correct answer: answer = 5110
14 Correct 3 ms 4756 KB Correct answer: answer = 2626
15 Correct 3 ms 4756 KB Correct answer: answer = 796
16 Correct 3 ms 4756 KB Correct answer: answer = 7580
17 Correct 0 ms 4756 KB Correct answer: answer = 1904
18 Correct 3 ms 4756 KB Correct answer: answer = 996004
19 Correct 3 ms 4756 KB Correct answer: answer = 38817
20 Correct 3 ms 4756 KB Correct answer: answer = 4096
21 Correct 3 ms 4756 KB Correct answer: answer = 1
22 Correct 3 ms 4756 KB Correct answer: answer = 1
23 Correct 3 ms 4756 KB Correct answer: answer = 2040
24 Correct 3 ms 4756 KB Correct answer: answer = 2
# Verdict Execution time Memory Grader output
1 Correct 3 ms 4756 KB Correct answer: answer = 4
2 Correct 3 ms 4756 KB Correct answer: answer = 4
3 Correct 0 ms 4756 KB Correct answer: answer = 4
4 Correct 3 ms 4756 KB Correct answer: answer = 12
5 Correct 3 ms 4756 KB Correct answer: answer = 52
6 Correct 0 ms 4756 KB Correct answer: answer = 210
7 Correct 3 ms 4756 KB Correct answer: answer = 88
8 Correct 3 ms 4756 KB Correct answer: answer = 7696
9 Correct 3 ms 4756 KB Correct answer: answer = 1
10 Correct 3 ms 4756 KB Correct answer: answer = 2374
11 Correct 3 ms 4756 KB Correct answer: answer = 9502
12 Correct 3 ms 4756 KB Correct answer: answer = 49
13 Correct 3 ms 4756 KB Correct answer: answer = 151
14 Correct 3 ms 4756 KB Correct answer: answer = 7550
15 Correct 0 ms 4756 KB Correct answer: answer = 7220
16 Correct 3 ms 4756 KB Correct answer: answer = 7550
17 Correct 3 ms 4756 KB Correct answer: answer = 10000
18 Correct 3 ms 4756 KB Correct answer: answer = 10000
19 Correct 3 ms 4756 KB Correct answer: answer = 624
20 Correct 3 ms 4756 KB Correct answer: answer = 10000
21 Correct 3 ms 4756 KB Correct answer: answer = 1
22 Correct 3 ms 4756 KB Correct answer: answer = 4
23 Correct 3 ms 4756 KB Correct answer: answer = 1
24 Correct 3 ms 4756 KB Correct answer: answer = 5
25 Correct 3 ms 4756 KB Correct answer: answer = 41
26 Correct 3 ms 4756 KB Correct answer: answer = 71923
27 Correct 3 ms 4756 KB Correct answer: answer = 77137
28 Correct 3 ms 4756 KB Correct answer: answer = 764
29 Correct 3 ms 4756 KB Correct answer: answer = 250000
30 Correct 3 ms 4756 KB Correct answer: answer = 500
31 Correct 3 ms 4756 KB Correct answer: answer = 32
32 Correct 3 ms 4756 KB Correct answer: answer = 130050
33 Correct 3 ms 4756 KB Correct answer: answer = 5110
34 Correct 3 ms 4756 KB Correct answer: answer = 2626
35 Correct 3 ms 4756 KB Correct answer: answer = 796
36 Correct 3 ms 4756 KB Correct answer: answer = 7580
37 Correct 0 ms 4756 KB Correct answer: answer = 1904
38 Correct 3 ms 4756 KB Correct answer: answer = 996004
39 Correct 3 ms 4756 KB Correct answer: answer = 38817
40 Correct 3 ms 4756 KB Correct answer: answer = 4096
41 Correct 3 ms 4756 KB Correct answer: answer = 1
42 Correct 3 ms 4756 KB Correct answer: answer = 1
43 Correct 3 ms 4756 KB Correct answer: answer = 2040
44 Correct 3 ms 4756 KB Correct answer: answer = 2
45 Correct 3 ms 4756 KB Correct answer: answer = 4
46 Correct 3 ms 4756 KB Correct answer: answer = 9
47 Correct 3 ms 4756 KB Correct answer: answer = 9
48 Correct 3 ms 4756 KB Correct answer: answer = 21
49 Correct 0 ms 4756 KB Correct answer: answer = 71
50 Correct 3 ms 4756 KB Correct answer: answer = 77
51 Correct 0 ms 4756 KB Correct answer: answer = 400
52 Correct 3 ms 4756 KB Correct answer: answer = 996004
53 Correct 3 ms 4756 KB Correct answer: answer = 997310
54 Correct 3 ms 4756 KB Correct answer: answer = 990781
55 Correct 3 ms 4756 KB Correct answer: answer = 996545
56 Correct 3 ms 4756 KB Correct answer: answer = 484
57 Correct 3 ms 4756 KB Correct answer: answer = 484
58 Correct 6 ms 4756 KB Correct answer: answer = 63501
59 Correct 3 ms 4756 KB Correct answer: answer = 323501
60 Correct 6 ms 4756 KB Correct answer: answer = 752500
61 Correct 3 ms 4756 KB Correct answer: answer = 761480
62 Correct 3 ms 4756 KB Correct answer: answer = 758932
63 Correct 3 ms 4756 KB Correct answer: answer = 1000000
64 Correct 3 ms 4756 KB Correct answer: answer = 750500
65 Correct 3 ms 4756 KB Correct answer: answer = 1000000
66 Correct 3 ms 4756 KB Correct answer: answer = 250000
67 Correct 3 ms 4756 KB Correct answer: answer = 250000
68 Correct 3 ms 4756 KB Correct answer: answer = 1000000
69 Correct 3 ms 4756 KB Correct answer: answer = 994009
70 Correct 3 ms 4756 KB Correct answer: answer = 59315
71 Correct 3 ms 4756 KB Correct answer: answer = 25454
72 Correct 3 ms 4756 KB Correct answer: answer = 1504
73 Correct 3 ms 4756 KB Correct answer: answer = 37486
74 Correct 3 ms 4756 KB Correct answer: answer = 4284
75 Correct 3 ms 4756 KB Correct answer: answer = 158008
76 Correct 3 ms 4756 KB Correct answer: answer = 51860
77 Correct 3 ms 4756 KB Correct answer: answer = 12985
# Verdict Execution time Memory Grader output
1 Correct 3 ms 4756 KB Correct answer: answer = 4
2 Correct 3 ms 4756 KB Correct answer: answer = 4
3 Correct 0 ms 4756 KB Correct answer: answer = 4
4 Correct 3 ms 4756 KB Correct answer: answer = 12
5 Correct 3 ms 4756 KB Correct answer: answer = 52
6 Correct 0 ms 4756 KB Correct answer: answer = 210
7 Correct 3 ms 4756 KB Correct answer: answer = 88
8 Correct 3 ms 4756 KB Correct answer: answer = 7696
9 Correct 3 ms 4756 KB Correct answer: answer = 1
10 Correct 3 ms 4756 KB Correct answer: answer = 2374
11 Correct 3 ms 4756 KB Correct answer: answer = 9502
12 Correct 3 ms 4756 KB Correct answer: answer = 49
13 Correct 3 ms 4756 KB Correct answer: answer = 151
14 Correct 3 ms 4756 KB Correct answer: answer = 7550
15 Correct 0 ms 4756 KB Correct answer: answer = 7220
16 Correct 3 ms 4756 KB Correct answer: answer = 7550
17 Correct 3 ms 4756 KB Correct answer: answer = 10000
18 Correct 3 ms 4756 KB Correct answer: answer = 10000
19 Correct 3 ms 4756 KB Correct answer: answer = 624
20 Correct 3 ms 4756 KB Correct answer: answer = 10000
21 Correct 3 ms 4756 KB Correct answer: answer = 1
22 Correct 3 ms 4756 KB Correct answer: answer = 4
23 Correct 3 ms 4756 KB Correct answer: answer = 1
24 Correct 3 ms 4756 KB Correct answer: answer = 5
25 Correct 3 ms 4756 KB Correct answer: answer = 41
26 Correct 3 ms 4756 KB Correct answer: answer = 71923
27 Correct 3 ms 4756 KB Correct answer: answer = 77137
28 Correct 3 ms 4756 KB Correct answer: answer = 764
29 Correct 3 ms 4756 KB Correct answer: answer = 250000
30 Correct 3 ms 4756 KB Correct answer: answer = 500
31 Correct 3 ms 4756 KB Correct answer: answer = 32
32 Correct 3 ms 4756 KB Correct answer: answer = 130050
33 Correct 3 ms 4756 KB Correct answer: answer = 5110
34 Correct 3 ms 4756 KB Correct answer: answer = 2626
35 Correct 3 ms 4756 KB Correct answer: answer = 796
36 Correct 3 ms 4756 KB Correct answer: answer = 7580
37 Correct 0 ms 4756 KB Correct answer: answer = 1904
38 Correct 3 ms 4756 KB Correct answer: answer = 996004
39 Correct 3 ms 4756 KB Correct answer: answer = 38817
40 Correct 3 ms 4756 KB Correct answer: answer = 4096
41 Correct 3 ms 4756 KB Correct answer: answer = 1
42 Correct 3 ms 4756 KB Correct answer: answer = 1
43 Correct 3 ms 4756 KB Correct answer: answer = 2040
44 Correct 3 ms 4756 KB Correct answer: answer = 2
45 Correct 3 ms 4756 KB Correct answer: answer = 4
46 Correct 3 ms 4756 KB Correct answer: answer = 9
47 Correct 3 ms 4756 KB Correct answer: answer = 9
48 Correct 3 ms 4756 KB Correct answer: answer = 21
49 Correct 0 ms 4756 KB Correct answer: answer = 71
50 Correct 3 ms 4756 KB Correct answer: answer = 77
51 Correct 0 ms 4756 KB Correct answer: answer = 400
52 Correct 3 ms 4756 KB Correct answer: answer = 996004
53 Correct 3 ms 4756 KB Correct answer: answer = 997310
54 Correct 3 ms 4756 KB Correct answer: answer = 990781
55 Correct 3 ms 4756 KB Correct answer: answer = 996545
56 Correct 3 ms 4756 KB Correct answer: answer = 484
57 Correct 3 ms 4756 KB Correct answer: answer = 484
58 Correct 6 ms 4756 KB Correct answer: answer = 63501
59 Correct 3 ms 4756 KB Correct answer: answer = 323501
60 Correct 6 ms 4756 KB Correct answer: answer = 752500
61 Correct 3 ms 4756 KB Correct answer: answer = 761480
62 Correct 3 ms 4756 KB Correct answer: answer = 758932
63 Correct 3 ms 4756 KB Correct answer: answer = 1000000
64 Correct 3 ms 4756 KB Correct answer: answer = 750500
65 Correct 3 ms 4756 KB Correct answer: answer = 1000000
66 Correct 3 ms 4756 KB Correct answer: answer = 250000
67 Correct 3 ms 4756 KB Correct answer: answer = 250000
68 Correct 3 ms 4756 KB Correct answer: answer = 1000000
69 Correct 3 ms 4756 KB Correct answer: answer = 994009
70 Correct 3 ms 4756 KB Correct answer: answer = 59315
71 Correct 3 ms 4756 KB Correct answer: answer = 25454
72 Correct 3 ms 4756 KB Correct answer: answer = 1504
73 Correct 3 ms 4756 KB Correct answer: answer = 37486
74 Correct 3 ms 4756 KB Correct answer: answer = 4284
75 Correct 3 ms 4756 KB Correct answer: answer = 158008
76 Correct 3 ms 4756 KB Correct answer: answer = 51860
77 Correct 3 ms 4756 KB Correct answer: answer = 12985
78 Correct 3 ms 4896 KB Correct answer: answer = 997864126212
79 Correct 3 ms 4896 KB Correct answer: answer = 998608411647
80 Correct 6 ms 4896 KB Correct answer: answer = 995265560477
81 Correct 13 ms 4896 KB Correct answer: answer = 10125000
82 Correct 9 ms 4896 KB Correct answer: answer = 2291668
83 Correct 6 ms 4888 KB Correct answer: answer = 42388
84 Correct 6 ms 4888 KB Correct answer: answer = 10318
85 Correct 6 ms 4888 KB Correct answer: answer = 3416
86 Correct 13 ms 4896 KB Correct answer: answer = 331708193881
87 Correct 13 ms 4896 KB Correct answer: answer = 2861193756
88 Correct 13 ms 4896 KB Correct answer: answer = 114646930
89 Correct 9 ms 4896 KB Correct answer: answer = 9280921
90 Correct 9 ms 4896 KB Correct answer: answer = 999984053400
91 Correct 13 ms 4896 KB Correct answer: answer = 750935949134
92 Correct 6 ms 4896 KB Correct answer: answer = 1000000000000
93 Correct 3 ms 4896 KB Correct answer: answer = 998762383161
94 Correct 13 ms 4896 KB Correct answer: answer = 23017412908
95 Correct 3 ms 4896 KB Correct answer: answer = 728143410622
96 Correct 6 ms 4896 KB Correct answer: answer = 2
97 Correct 16 ms 4896 KB Correct answer: answer = 1824916
98 Correct 6 ms 4896 KB Correct answer: answer = 10680029
99 Correct 16 ms 4896 KB Correct answer: answer = 18351700
100 Correct 6 ms 4896 KB Correct answer: answer = 16040026
101 Correct 3 ms 4896 KB Correct answer: answer = 253968628325
102 Correct 6 ms 4756 KB Correct answer: answer = 10267
103 Correct 9 ms 4896 KB Correct answer: answer = 2582408
104 Correct 6 ms 4896 KB Correct answer: answer = 78024964781
105 Correct 3 ms 4896 KB Correct answer: answer = 9866346457
106 Correct 6 ms 4896 KB Correct answer: answer = 3327720949
107 Correct 6 ms 4896 KB Correct answer: answer = 86064128360
108 Correct 3 ms 4896 KB Correct answer: answer = 12698259150
109 Correct 9 ms 4896 KB Correct answer: answer = 1185259288
# Verdict Execution time Memory Grader output
1 Correct 3 ms 4756 KB Correct answer: answer = 4
2 Correct 3 ms 4756 KB Correct answer: answer = 4
3 Correct 0 ms 4756 KB Correct answer: answer = 4
4 Correct 3 ms 4756 KB Correct answer: answer = 12
5 Correct 3 ms 4756 KB Correct answer: answer = 52
6 Correct 0 ms 4756 KB Correct answer: answer = 210
7 Correct 3 ms 4756 KB Correct answer: answer = 88
8 Correct 3 ms 4756 KB Correct answer: answer = 7696
9 Correct 3 ms 4756 KB Correct answer: answer = 1
10 Correct 3 ms 4756 KB Correct answer: answer = 2374
11 Correct 3 ms 4756 KB Correct answer: answer = 9502
12 Correct 3 ms 4756 KB Correct answer: answer = 49
13 Correct 3 ms 4756 KB Correct answer: answer = 151
14 Correct 3 ms 4756 KB Correct answer: answer = 7550
15 Correct 0 ms 4756 KB Correct answer: answer = 7220
16 Correct 3 ms 4756 KB Correct answer: answer = 7550
17 Correct 3 ms 4756 KB Correct answer: answer = 10000
18 Correct 3 ms 4756 KB Correct answer: answer = 10000
19 Correct 3 ms 4756 KB Correct answer: answer = 624
20 Correct 3 ms 4756 KB Correct answer: answer = 10000
21 Correct 3 ms 4756 KB Correct answer: answer = 1
22 Correct 3 ms 4756 KB Correct answer: answer = 4
23 Correct 3 ms 4756 KB Correct answer: answer = 1
24 Correct 3 ms 4756 KB Correct answer: answer = 5
25 Correct 3 ms 4756 KB Correct answer: answer = 41
26 Correct 3 ms 4756 KB Correct answer: answer = 71923
27 Correct 3 ms 4756 KB Correct answer: answer = 77137
28 Correct 3 ms 4756 KB Correct answer: answer = 764
29 Correct 3 ms 4756 KB Correct answer: answer = 250000
30 Correct 3 ms 4756 KB Correct answer: answer = 500
31 Correct 3 ms 4756 KB Correct answer: answer = 32
32 Correct 3 ms 4756 KB Correct answer: answer = 130050
33 Correct 3 ms 4756 KB Correct answer: answer = 5110
34 Correct 3 ms 4756 KB Correct answer: answer = 2626
35 Correct 3 ms 4756 KB Correct answer: answer = 796
36 Correct 3 ms 4756 KB Correct answer: answer = 7580
37 Correct 0 ms 4756 KB Correct answer: answer = 1904
38 Correct 3 ms 4756 KB Correct answer: answer = 996004
39 Correct 3 ms 4756 KB Correct answer: answer = 38817
40 Correct 3 ms 4756 KB Correct answer: answer = 4096
41 Correct 3 ms 4756 KB Correct answer: answer = 1
42 Correct 3 ms 4756 KB Correct answer: answer = 1
43 Correct 3 ms 4756 KB Correct answer: answer = 2040
44 Correct 3 ms 4756 KB Correct answer: answer = 2
45 Correct 3 ms 4756 KB Correct answer: answer = 4
46 Correct 3 ms 4756 KB Correct answer: answer = 9
47 Correct 3 ms 4756 KB Correct answer: answer = 9
48 Correct 3 ms 4756 KB Correct answer: answer = 21
49 Correct 0 ms 4756 KB Correct answer: answer = 71
50 Correct 3 ms 4756 KB Correct answer: answer = 77
51 Correct 0 ms 4756 KB Correct answer: answer = 400
52 Correct 3 ms 4756 KB Correct answer: answer = 996004
53 Correct 3 ms 4756 KB Correct answer: answer = 997310
54 Correct 3 ms 4756 KB Correct answer: answer = 990781
55 Correct 3 ms 4756 KB Correct answer: answer = 996545
56 Correct 3 ms 4756 KB Correct answer: answer = 484
57 Correct 3 ms 4756 KB Correct answer: answer = 484
58 Correct 6 ms 4756 KB Correct answer: answer = 63501
59 Correct 3 ms 4756 KB Correct answer: answer = 323501
60 Correct 6 ms 4756 KB Correct answer: answer = 752500
61 Correct 3 ms 4756 KB Correct answer: answer = 761480
62 Correct 3 ms 4756 KB Correct answer: answer = 758932
63 Correct 3 ms 4756 KB Correct answer: answer = 1000000
64 Correct 3 ms 4756 KB Correct answer: answer = 750500
65 Correct 3 ms 4756 KB Correct answer: answer = 1000000
66 Correct 3 ms 4756 KB Correct answer: answer = 250000
67 Correct 3 ms 4756 KB Correct answer: answer = 250000
68 Correct 3 ms 4756 KB Correct answer: answer = 1000000
69 Correct 3 ms 4756 KB Correct answer: answer = 994009
70 Correct 3 ms 4756 KB Correct answer: answer = 59315
71 Correct 3 ms 4756 KB Correct answer: answer = 25454
72 Correct 3 ms 4756 KB Correct answer: answer = 1504
73 Correct 3 ms 4756 KB Correct answer: answer = 37486
74 Correct 3 ms 4756 KB Correct answer: answer = 4284
75 Correct 3 ms 4756 KB Correct answer: answer = 158008
76 Correct 3 ms 4756 KB Correct answer: answer = 51860
77 Correct 3 ms 4756 KB Correct answer: answer = 12985
78 Correct 3 ms 4896 KB Correct answer: answer = 997864126212
79 Correct 3 ms 4896 KB Correct answer: answer = 998608411647
80 Correct 6 ms 4896 KB Correct answer: answer = 995265560477
81 Correct 13 ms 4896 KB Correct answer: answer = 10125000
82 Correct 9 ms 4896 KB Correct answer: answer = 2291668
83 Correct 6 ms 4888 KB Correct answer: answer = 42388
84 Correct 6 ms 4888 KB Correct answer: answer = 10318
85 Correct 6 ms 4888 KB Correct answer: answer = 3416
86 Correct 13 ms 4896 KB Correct answer: answer = 331708193881
87 Correct 13 ms 4896 KB Correct answer: answer = 2861193756
88 Correct 13 ms 4896 KB Correct answer: answer = 114646930
89 Correct 9 ms 4896 KB Correct answer: answer = 9280921
90 Correct 9 ms 4896 KB Correct answer: answer = 999984053400
91 Correct 13 ms 4896 KB Correct answer: answer = 750935949134
92 Correct 6 ms 4896 KB Correct answer: answer = 1000000000000
93 Correct 3 ms 4896 KB Correct answer: answer = 998762383161
94 Correct 13 ms 4896 KB Correct answer: answer = 23017412908
95 Correct 3 ms 4896 KB Correct answer: answer = 728143410622
96 Correct 6 ms 4896 KB Correct answer: answer = 2
97 Correct 16 ms 4896 KB Correct answer: answer = 1824916
98 Correct 6 ms 4896 KB Correct answer: answer = 10680029
99 Correct 16 ms 4896 KB Correct answer: answer = 18351700
100 Correct 6 ms 4896 KB Correct answer: answer = 16040026
101 Correct 3 ms 4896 KB Correct answer: answer = 253968628325
102 Correct 6 ms 4756 KB Correct answer: answer = 10267
103 Correct 9 ms 4896 KB Correct answer: answer = 2582408
104 Correct 6 ms 4896 KB Correct answer: answer = 78024964781
105 Correct 3 ms 4896 KB Correct answer: answer = 9866346457
106 Correct 6 ms 4896 KB Correct answer: answer = 3327720949
107 Correct 6 ms 4896 KB Correct answer: answer = 86064128360
108 Correct 3 ms 4896 KB Correct answer: answer = 12698259150
109 Correct 9 ms 4896 KB Correct answer: answer = 1185259288
110 Correct 26 ms 5540 KB Correct answer: answer = 999889968863
111 Correct 23 ms 5540 KB Correct answer: answer = 999861384931
112 Correct 13 ms 5540 KB Correct answer: answer = 999811809929
113 Correct 26 ms 5540 KB Correct answer: answer = 999869756441
114 Correct 99 ms 6012 KB Correct answer: answer = 1700000000
115 Correct 99 ms 6012 KB Correct answer: answer = 131666670
116 Correct 33 ms 5220 KB Correct answer: answer = 89478486
117 Correct 33 ms 5220 KB Correct answer: answer = 4971040
118 Correct 33 ms 5220 KB Correct answer: answer = 2711494
119 Correct 116 ms 6204 KB Correct answer: answer = 25252530
120 Correct 93 ms 6204 KB Correct answer: answer = 62500000
121 Correct 116 ms 5540 KB Correct answer: answer = 333175097780
122 Correct 133 ms 5540 KB Correct answer: answer = 33121180179
123 Correct 129 ms 5540 KB Correct answer: answer = 9802314015
124 Correct 93 ms 6204 KB Correct answer: answer = 32567551
125 Correct 96 ms 6204 KB Correct answer: answer = 997525000000
126 Correct 123 ms 5540 KB Correct answer: answer = 752723538884
127 Correct 26 ms 5540 KB Correct answer: answer = 1000000000000
128 Correct 29 ms 5540 KB Correct answer: answer = 999978000121
129 Correct 23 ms 5540 KB Correct answer: answer = 745986144735
130 Correct 9 ms 5540 KB Correct answer: answer = 2
131 Correct 89 ms 6144 KB Correct answer: answer = 277966670
132 Correct 93 ms 6144 KB Correct answer: answer = 2500900082
133 Correct 36 ms 5540 KB Correct answer: answer = 301248349636
134 Correct 59 ms 5256 KB Correct answer: answer = 14118891
135 Correct 19 ms 5540 KB Correct answer: answer = 14384977265
136 Correct 26 ms 5540 KB Correct answer: answer = 3681368330
137 Correct 23 ms 5540 KB Correct answer: answer = 2720316816
# Verdict Execution time Memory Grader output
1 Correct 3 ms 4756 KB Correct answer: answer = 4
2 Correct 3 ms 4756 KB Correct answer: answer = 4
3 Correct 0 ms 4756 KB Correct answer: answer = 4
4 Correct 3 ms 4756 KB Correct answer: answer = 12
5 Correct 3 ms 4756 KB Correct answer: answer = 52
6 Correct 0 ms 4756 KB Correct answer: answer = 210
7 Correct 3 ms 4756 KB Correct answer: answer = 88
8 Correct 3 ms 4756 KB Correct answer: answer = 7696
9 Correct 3 ms 4756 KB Correct answer: answer = 1
10 Correct 3 ms 4756 KB Correct answer: answer = 2374
11 Correct 3 ms 4756 KB Correct answer: answer = 9502
12 Correct 3 ms 4756 KB Correct answer: answer = 49
13 Correct 3 ms 4756 KB Correct answer: answer = 151
14 Correct 3 ms 4756 KB Correct answer: answer = 7550
15 Correct 0 ms 4756 KB Correct answer: answer = 7220
16 Correct 3 ms 4756 KB Correct answer: answer = 7550
17 Correct 3 ms 4756 KB Correct answer: answer = 10000
18 Correct 3 ms 4756 KB Correct answer: answer = 10000
19 Correct 3 ms 4756 KB Correct answer: answer = 624
20 Correct 3 ms 4756 KB Correct answer: answer = 10000
21 Correct 3 ms 4756 KB Correct answer: answer = 1
22 Correct 3 ms 4756 KB Correct answer: answer = 4
23 Correct 3 ms 4756 KB Correct answer: answer = 1
24 Correct 3 ms 4756 KB Correct answer: answer = 5
25 Correct 3 ms 4756 KB Correct answer: answer = 41
26 Correct 3 ms 4756 KB Correct answer: answer = 71923
27 Correct 3 ms 4756 KB Correct answer: answer = 77137
28 Correct 3 ms 4756 KB Correct answer: answer = 764
29 Correct 3 ms 4756 KB Correct answer: answer = 250000
30 Correct 3 ms 4756 KB Correct answer: answer = 500
31 Correct 3 ms 4756 KB Correct answer: answer = 32
32 Correct 3 ms 4756 KB Correct answer: answer = 130050
33 Correct 3 ms 4756 KB Correct answer: answer = 5110
34 Correct 3 ms 4756 KB Correct answer: answer = 2626
35 Correct 3 ms 4756 KB Correct answer: answer = 796
36 Correct 3 ms 4756 KB Correct answer: answer = 7580
37 Correct 0 ms 4756 KB Correct answer: answer = 1904
38 Correct 3 ms 4756 KB Correct answer: answer = 996004
39 Correct 3 ms 4756 KB Correct answer: answer = 38817
40 Correct 3 ms 4756 KB Correct answer: answer = 4096
41 Correct 3 ms 4756 KB Correct answer: answer = 1
42 Correct 3 ms 4756 KB Correct answer: answer = 1
43 Correct 3 ms 4756 KB Correct answer: answer = 2040
44 Correct 3 ms 4756 KB Correct answer: answer = 2
45 Correct 3 ms 4756 KB Correct answer: answer = 4
46 Correct 3 ms 4756 KB Correct answer: answer = 9
47 Correct 3 ms 4756 KB Correct answer: answer = 9
48 Correct 3 ms 4756 KB Correct answer: answer = 21
49 Correct 0 ms 4756 KB Correct answer: answer = 71
50 Correct 3 ms 4756 KB Correct answer: answer = 77
51 Correct 0 ms 4756 KB Correct answer: answer = 400
52 Correct 3 ms 4756 KB Correct answer: answer = 996004
53 Correct 3 ms 4756 KB Correct answer: answer = 997310
54 Correct 3 ms 4756 KB Correct answer: answer = 990781
55 Correct 3 ms 4756 KB Correct answer: answer = 996545
56 Correct 3 ms 4756 KB Correct answer: answer = 484
57 Correct 3 ms 4756 KB Correct answer: answer = 484
58 Correct 6 ms 4756 KB Correct answer: answer = 63501
59 Correct 3 ms 4756 KB Correct answer: answer = 323501
60 Correct 6 ms 4756 KB Correct answer: answer = 752500
61 Correct 3 ms 4756 KB Correct answer: answer = 761480
62 Correct 3 ms 4756 KB Correct answer: answer = 758932
63 Correct 3 ms 4756 KB Correct answer: answer = 1000000
64 Correct 3 ms 4756 KB Correct answer: answer = 750500
65 Correct 3 ms 4756 KB Correct answer: answer = 1000000
66 Correct 3 ms 4756 KB Correct answer: answer = 250000
67 Correct 3 ms 4756 KB Correct answer: answer = 250000
68 Correct 3 ms 4756 KB Correct answer: answer = 1000000
69 Correct 3 ms 4756 KB Correct answer: answer = 994009
70 Correct 3 ms 4756 KB Correct answer: answer = 59315
71 Correct 3 ms 4756 KB Correct answer: answer = 25454
72 Correct 3 ms 4756 KB Correct answer: answer = 1504
73 Correct 3 ms 4756 KB Correct answer: answer = 37486
74 Correct 3 ms 4756 KB Correct answer: answer = 4284
75 Correct 3 ms 4756 KB Correct answer: answer = 158008
76 Correct 3 ms 4756 KB Correct answer: answer = 51860
77 Correct 3 ms 4756 KB Correct answer: answer = 12985
78 Correct 3 ms 4896 KB Correct answer: answer = 997864126212
79 Correct 3 ms 4896 KB Correct answer: answer = 998608411647
80 Correct 6 ms 4896 KB Correct answer: answer = 995265560477
81 Correct 13 ms 4896 KB Correct answer: answer = 10125000
82 Correct 9 ms 4896 KB Correct answer: answer = 2291668
83 Correct 6 ms 4888 KB Correct answer: answer = 42388
84 Correct 6 ms 4888 KB Correct answer: answer = 10318
85 Correct 6 ms 4888 KB Correct answer: answer = 3416
86 Correct 13 ms 4896 KB Correct answer: answer = 331708193881
87 Correct 13 ms 4896 KB Correct answer: answer = 2861193756
88 Correct 13 ms 4896 KB Correct answer: answer = 114646930
89 Correct 9 ms 4896 KB Correct answer: answer = 9280921
90 Correct 9 ms 4896 KB Correct answer: answer = 999984053400
91 Correct 13 ms 4896 KB Correct answer: answer = 750935949134
92 Correct 6 ms 4896 KB Correct answer: answer = 1000000000000
93 Correct 3 ms 4896 KB Correct answer: answer = 998762383161
94 Correct 13 ms 4896 KB Correct answer: answer = 23017412908
95 Correct 3 ms 4896 KB Correct answer: answer = 728143410622
96 Correct 6 ms 4896 KB Correct answer: answer = 2
97 Correct 16 ms 4896 KB Correct answer: answer = 1824916
98 Correct 6 ms 4896 KB Correct answer: answer = 10680029
99 Correct 16 ms 4896 KB Correct answer: answer = 18351700
100 Correct 6 ms 4896 KB Correct answer: answer = 16040026
101 Correct 3 ms 4896 KB Correct answer: answer = 253968628325
102 Correct 6 ms 4756 KB Correct answer: answer = 10267
103 Correct 9 ms 4896 KB Correct answer: answer = 2582408
104 Correct 6 ms 4896 KB Correct answer: answer = 78024964781
105 Correct 3 ms 4896 KB Correct answer: answer = 9866346457
106 Correct 6 ms 4896 KB Correct answer: answer = 3327720949
107 Correct 6 ms 4896 KB Correct answer: answer = 86064128360
108 Correct 3 ms 4896 KB Correct answer: answer = 12698259150
109 Correct 9 ms 4896 KB Correct answer: answer = 1185259288
110 Correct 26 ms 5540 KB Correct answer: answer = 999889968863
111 Correct 23 ms 5540 KB Correct answer: answer = 999861384931
112 Correct 13 ms 5540 KB Correct answer: answer = 999811809929
113 Correct 26 ms 5540 KB Correct answer: answer = 999869756441
114 Correct 99 ms 6012 KB Correct answer: answer = 1700000000
115 Correct 99 ms 6012 KB Correct answer: answer = 131666670
116 Correct 33 ms 5220 KB Correct answer: answer = 89478486
117 Correct 33 ms 5220 KB Correct answer: answer = 4971040
118 Correct 33 ms 5220 KB Correct answer: answer = 2711494
119 Correct 116 ms 6204 KB Correct answer: answer = 25252530
120 Correct 93 ms 6204 KB Correct answer: answer = 62500000
121 Correct 116 ms 5540 KB Correct answer: answer = 333175097780
122 Correct 133 ms 5540 KB Correct answer: answer = 33121180179
123 Correct 129 ms 5540 KB Correct answer: answer = 9802314015
124 Correct 93 ms 6204 KB Correct answer: answer = 32567551
125 Correct 96 ms 6204 KB Correct answer: answer = 997525000000
126 Correct 123 ms 5540 KB Correct answer: answer = 752723538884
127 Correct 26 ms 5540 KB Correct answer: answer = 1000000000000
128 Correct 29 ms 5540 KB Correct answer: answer = 999978000121
129 Correct 23 ms 5540 KB Correct answer: answer = 745986144735
130 Correct 9 ms 5540 KB Correct answer: answer = 2
131 Correct 89 ms 6144 KB Correct answer: answer = 277966670
132 Correct 93 ms 6144 KB Correct answer: answer = 2500900082
133 Correct 36 ms 5540 KB Correct answer: answer = 301248349636
134 Correct 59 ms 5256 KB Correct answer: answer = 14118891
135 Correct 19 ms 5540 KB Correct answer: answer = 14384977265
136 Correct 26 ms 5540 KB Correct answer: answer = 3681368330
137 Correct 23 ms 5540 KB Correct answer: answer = 2720316816
138 Correct 43 ms 6324 KB Correct answer: answer = 999976000144
139 Correct 53 ms 6324 KB Correct answer: answer = 999856102410
140 Correct 49 ms 6324 KB Correct answer: answer = 999958401531
141 Correct 49 ms 6324 KB Correct answer: answer = 999769649944
142 Correct 43 ms 6324 KB Correct answer: answer = 999874525918
143 Correct 193 ms 7324 KB Correct answer: answer = 6050000000
144 Correct 193 ms 7324 KB Correct answer: answer = 1112500000
145 Correct 96 ms 6664 KB Correct answer: answer = 4294967296
146 Correct 116 ms 6592 KB Correct answer: answer = 87652406
147 Correct 126 ms 6592 KB Correct answer: answer = 6297664
148 Correct 106 ms 6592 KB Correct answer: answer = 196612
149 Correct 196 ms 7516 KB Correct answer: answer = 15015100
150 Correct 163 ms 7516 KB Correct answer: answer = 25000000
151 Correct 226 ms 6324 KB Correct answer: answer = 333230209550
152 Correct 219 ms 6324 KB Correct answer: answer = 917123769
153 Correct 219 ms 6324 KB Correct answer: answer = 95162
154 Correct 189 ms 7516 KB Correct answer: answer = 382616191
155 Correct 183 ms 7516 KB Correct answer: answer = 990033333400
156 Correct 209 ms 7516 KB Correct answer: answer = 990000100000
157 Correct 223 ms 6324 KB Correct answer: answer = 749998188180
158 Correct 33 ms 6324 KB Correct answer: answer = 1000000000000
159 Correct 49 ms 6324 KB Correct answer: answer = 999988000036
160 Correct 53 ms 6324 KB Correct answer: answer = 744929274393
161 Correct 23 ms 6324 KB Correct answer: answer = 2
162 Correct 229 ms 7588 KB Correct answer: answer = 1300024
163 Correct 196 ms 7588 KB Correct answer: answer = 5000700010
164 Correct 59 ms 6324 KB Correct answer: answer = 354997100800
165 Correct 116 ms 5804 KB Correct answer: answer = 257000
166 Correct 109 ms 6468 KB Correct answer: answer = 3765323
167 Correct 109 ms 6144 KB Correct answer: answer = 1525903
168 Correct 46 ms 6324 KB Correct answer: answer = 67618137730
169 Correct 46 ms 6324 KB Correct answer: answer = 12656680171
170 Correct 53 ms 6324 KB Correct answer: answer = 579831736
171 Correct 86 ms 6324 KB Correct answer: answer = 23605611
172 Correct 56 ms 6324 KB Correct answer: answer = 7052481200
173 Correct 59 ms 6324 KB Correct answer: answer = 1314039500
174 Correct 63 ms 6324 KB Correct answer: answer = 302484000
175 Correct 136 ms 6456 KB Correct answer: answer = 52348480