Submission #529099

# Submission time Handle Problem Language Result Execution time Memory
529099 2022-02-22T06:22:25 Z Graphter Aliens (IOI16_aliens) C++17
100 / 100
238 ms 6712 KB
#include <bits/stdc++.h>
#define debug(x) cout << #x << " = " << x << endl
#define REP(i, n) for (Long i = 0; i < (Long)n; i++)
using namespace std;

typedef long long Long;

//https://contest.yandex.com/ioi/contest/2830/problems/F/

const Long INF = 1e18;

struct Line {
	mutable Long m, b, r, cnt;
	//mx + b, intersect with next line at r (rounded down)
	Line() {}
	Line(Long m, Long b, Long r, Long cnt): m(m), b(b) , r(r), cnt(cnt) {}
	Line(Long m, Long b, Long cnt): m(m), b(b) , r(0), cnt(cnt) {}
	Long getVal(Long x) {return m * x + b;}
};


struct CmpLine {
	bool operator() (const Line &L1, const Line &L2) const {
		return L1.m < L2.m;
	}
};

struct CmpInter {
	bool operator() (const Line &L1, const Line &L2) const {
		return L1.r < L2.r;
	}
};

struct CHT{
	deque<Line> envelope;

	Long div(Long a, Long b) { //floored division
		//CAREFUL ! this won't produced the right convex envelope
		//but the maxY function will still work for integers
		//if you need the correct convex envelope, use double division
		//or multiplication in "bad" function
		assert(b != 0);
		return a / b - ((a ^ b) < 0 && a % b); 
	}
	
	Long intersect(Line l1, Line l2) {
		return div(l1.b - l2.b, l2.m - l1.m);
	}
	
	bool bad(Line l1, Line l2, Line l3) {
		//tells if l2 is bad an can be eliminated by l3
		return intersect(l2 , l3) <= intersect(l1, l2);
	}

	void addLine(Line l3) { 
		l3.m *= -1;
		l3.b *= -1;
		if (envelope.empty()) {
			envelope.push_back(l3);
			return;
		}
		if (l3.m == envelope.back().m) {
			if (l3.b > envelope.back().b) envelope.pop_back();
			else return;
		}
		if (envelope.size() <= 1) {
			envelope.push_back(l3);
			return;
		}
		Long sz = envelope.size();
		Line l1 = envelope[sz - 2];
		Line l2 = envelope[sz - 1];
		while (bad(l1, l2, l3)) {
			envelope.pop_back();
			if (envelope.size() == 1) break;
			sz = envelope.size();
			l1 = envelope[sz - 2];
			l2 = envelope[sz - 1];
		}
		envelope.push_back(l3);
	}
	
	pair<Long, Long> minY(Long x) { //O(log n)
		assert(!envelope.empty());
		while (envelope.size() >= 2 && envelope[0].getVal(x) < envelope[1].getVal(x)) {
			envelope.pop_front();
		}
		return {-envelope[0].getVal(x), envelope[0].cnt};
	}
};

struct Range {
	int l, r;
	Range(int l, int r): l(l), r(r){}
	bool operator <(const Range &other) {
		return r < other.r;
	}
	bool contains(Range &other) {
		return l <= other.l && other.r <= r;
	}
};

void removeContained(vector<Range> &v) {
	int n = v.size();
	vector<Range> ans = {v.back()};
	for (int i = n - 2; i >= 0; i--) {
		if (ans.back().contains(v[i])) continue;
		ans.push_back(v[i]);
	}
	reverse(ans.begin(), ans.end());
	v = ans;
}

Long square(Long x) {
	return x * x;
}

vector<int> L, R;
Long cost(int l, int r) {
	Long ans = square(R[r] - L[l]);
	if (l > 0) ans -= square(max(0, R[l - 1] - L[l]));
	return ans;
}

pair<Long, Long> getBest(Long lambda, int k) {
	//returns <P(lambda, x), g(x)>
	int n = L.size();
	CHT cht;
	vector<Long> dp(n);
	vector<Long> cnt(n);
	auto getLine = [&](int i) {
		return Line(-2 * L[i + 1], 
		dp[i] + square(L[i + 1]) - square(max(0, R[i] - L[i + 1])), cnt[i]);
	};
	
	cht.addLine(Line(-2 * L[0], + square(L[0]), 0));
	for (int i = 0; i < n; i++) {
		tie(dp[i], cnt[i]) = cht.minY(R[i]);
		dp[i] += square(R[i]) - lambda;
		cnt[i]++;
		if (i + 1 < n) cht.addLine(getLine(i));
	}
	return {dp[n - 1] + lambda * k, cnt[n - 1] - k};
}

bool check(Long lambda, int k) {
	return getBest(lambda, k).second <= 0;
}

const Long INF2 = 1e13;
Long minCost(int k) { //O(logn)
	// T T T ... F F F
	Long low = -INF2;
	Long high = INF2;
	if (check(high, k)) return getBest(high, k).first; //all T
	while (high - low > 1) { 
		Long mid = low + (high - low) / 2;
		if (check(mid, k)) low = mid;
		else high = mid;
	}
	//2 values low -> T and high-> F
	return getBest(low, k).first;
}

Long take_photos(int n, int m, int K, vector<int> x, vector<int> y) {
	vector<Range> v;
	REP(i, n) {
		int l = min(x[i], y[i]);
		int r = max(x[i], y[i]);
		v.push_back({l, r});
	}
	sort(v.begin(), v.end());
	removeContained(v);
	n = v.size();
	L = R = vector<int>(n);
	REP(i, n) {
		v[i].r++;
		L[i] = v[i].l;
		R[i] = v[i].r;
	}
	K = min(K, n);
	return minCost(K);
}
/*
5 8 5
1 5
3 4
2 6
1 4
3 5 
ans = 34

7 30 5
1 5
3 4
2 6
1 4
3 5 
9 15
14 22
ans = 160
*/
/*int main() {
	ios_base::sync_with_stdio(false);
	cin.tie(0);
	
	int n, m, k;
	cin >> n >> m >> k;
	vector<int> x(n);
	vector<int> y(n);
	REP(i, n) {
		cin >> x[i] >> y[i];
	}
	cout << take_photos(n, m, k, x, y) << "\n";
	
	return 0;
}*/
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Correct answer: answer = 4
2 Correct 1 ms 204 KB Correct answer: answer = 4
3 Correct 1 ms 204 KB Correct answer: answer = 4
4 Correct 1 ms 204 KB Correct answer: answer = 12
5 Correct 1 ms 204 KB Correct answer: answer = 52
6 Correct 0 ms 204 KB Correct answer: answer = 210
7 Correct 1 ms 204 KB Correct answer: answer = 88
8 Correct 0 ms 332 KB Correct answer: answer = 7696
9 Correct 0 ms 204 KB Correct answer: answer = 1
10 Correct 0 ms 204 KB Correct answer: answer = 2374
11 Correct 0 ms 204 KB Correct answer: answer = 9502
12 Correct 1 ms 204 KB Correct answer: answer = 49
13 Correct 0 ms 204 KB Correct answer: answer = 151
14 Correct 1 ms 204 KB Correct answer: answer = 7550
15 Correct 1 ms 204 KB Correct answer: answer = 7220
16 Correct 1 ms 204 KB Correct answer: answer = 7550
17 Correct 1 ms 292 KB Correct answer: answer = 10000
18 Correct 1 ms 204 KB Correct answer: answer = 10000
19 Correct 0 ms 288 KB Correct answer: answer = 624
20 Correct 1 ms 204 KB Correct answer: answer = 10000
# Verdict Execution time Memory Grader output
1 Correct 0 ms 204 KB Correct answer: answer = 1
2 Correct 1 ms 204 KB Correct answer: answer = 4
3 Correct 1 ms 204 KB Correct answer: answer = 1
4 Correct 0 ms 288 KB Correct answer: answer = 5
5 Correct 1 ms 204 KB Correct answer: answer = 41
6 Correct 1 ms 204 KB Correct answer: answer = 71923
7 Correct 1 ms 204 KB Correct answer: answer = 77137
8 Correct 1 ms 204 KB Correct answer: answer = 764
9 Correct 1 ms 204 KB Correct answer: answer = 250000
10 Correct 1 ms 204 KB Correct answer: answer = 500
11 Correct 0 ms 204 KB Correct answer: answer = 32
12 Correct 2 ms 204 KB Correct answer: answer = 130050
13 Correct 1 ms 204 KB Correct answer: answer = 5110
14 Correct 1 ms 204 KB Correct answer: answer = 2626
15 Correct 1 ms 288 KB Correct answer: answer = 796
16 Correct 1 ms 204 KB Correct answer: answer = 7580
17 Correct 2 ms 204 KB Correct answer: answer = 1904
18 Correct 1 ms 204 KB Correct answer: answer = 996004
19 Correct 1 ms 204 KB Correct answer: answer = 38817
20 Correct 1 ms 280 KB Correct answer: answer = 4096
21 Correct 1 ms 204 KB Correct answer: answer = 1
22 Correct 1 ms 204 KB Correct answer: answer = 1
23 Correct 1 ms 204 KB Correct answer: answer = 2040
24 Correct 1 ms 204 KB Correct answer: answer = 2
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Correct answer: answer = 4
2 Correct 1 ms 204 KB Correct answer: answer = 4
3 Correct 1 ms 204 KB Correct answer: answer = 4
4 Correct 1 ms 204 KB Correct answer: answer = 12
5 Correct 1 ms 204 KB Correct answer: answer = 52
6 Correct 0 ms 204 KB Correct answer: answer = 210
7 Correct 1 ms 204 KB Correct answer: answer = 88
8 Correct 0 ms 332 KB Correct answer: answer = 7696
9 Correct 0 ms 204 KB Correct answer: answer = 1
10 Correct 0 ms 204 KB Correct answer: answer = 2374
11 Correct 0 ms 204 KB Correct answer: answer = 9502
12 Correct 1 ms 204 KB Correct answer: answer = 49
13 Correct 0 ms 204 KB Correct answer: answer = 151
14 Correct 1 ms 204 KB Correct answer: answer = 7550
15 Correct 1 ms 204 KB Correct answer: answer = 7220
16 Correct 1 ms 204 KB Correct answer: answer = 7550
17 Correct 1 ms 292 KB Correct answer: answer = 10000
18 Correct 1 ms 204 KB Correct answer: answer = 10000
19 Correct 0 ms 288 KB Correct answer: answer = 624
20 Correct 1 ms 204 KB Correct answer: answer = 10000
21 Correct 0 ms 204 KB Correct answer: answer = 1
22 Correct 1 ms 204 KB Correct answer: answer = 4
23 Correct 1 ms 204 KB Correct answer: answer = 1
24 Correct 0 ms 288 KB Correct answer: answer = 5
25 Correct 1 ms 204 KB Correct answer: answer = 41
26 Correct 1 ms 204 KB Correct answer: answer = 71923
27 Correct 1 ms 204 KB Correct answer: answer = 77137
28 Correct 1 ms 204 KB Correct answer: answer = 764
29 Correct 1 ms 204 KB Correct answer: answer = 250000
30 Correct 1 ms 204 KB Correct answer: answer = 500
31 Correct 0 ms 204 KB Correct answer: answer = 32
32 Correct 2 ms 204 KB Correct answer: answer = 130050
33 Correct 1 ms 204 KB Correct answer: answer = 5110
34 Correct 1 ms 204 KB Correct answer: answer = 2626
35 Correct 1 ms 288 KB Correct answer: answer = 796
36 Correct 1 ms 204 KB Correct answer: answer = 7580
37 Correct 2 ms 204 KB Correct answer: answer = 1904
38 Correct 1 ms 204 KB Correct answer: answer = 996004
39 Correct 1 ms 204 KB Correct answer: answer = 38817
40 Correct 1 ms 280 KB Correct answer: answer = 4096
41 Correct 1 ms 204 KB Correct answer: answer = 1
42 Correct 1 ms 204 KB Correct answer: answer = 1
43 Correct 1 ms 204 KB Correct answer: answer = 2040
44 Correct 1 ms 204 KB Correct answer: answer = 2
45 Correct 0 ms 204 KB Correct answer: answer = 4
46 Correct 1 ms 204 KB Correct answer: answer = 9
47 Correct 1 ms 204 KB Correct answer: answer = 9
48 Correct 1 ms 204 KB Correct answer: answer = 21
49 Correct 1 ms 284 KB Correct answer: answer = 71
50 Correct 1 ms 292 KB Correct answer: answer = 77
51 Correct 1 ms 204 KB Correct answer: answer = 400
52 Correct 1 ms 204 KB Correct answer: answer = 996004
53 Correct 0 ms 204 KB Correct answer: answer = 997310
54 Correct 1 ms 204 KB Correct answer: answer = 990781
55 Correct 1 ms 204 KB Correct answer: answer = 996545
56 Correct 1 ms 204 KB Correct answer: answer = 484
57 Correct 1 ms 204 KB Correct answer: answer = 484
58 Correct 1 ms 292 KB Correct answer: answer = 63501
59 Correct 1 ms 288 KB Correct answer: answer = 323501
60 Correct 1 ms 204 KB Correct answer: answer = 752500
61 Correct 1 ms 204 KB Correct answer: answer = 761480
62 Correct 1 ms 204 KB Correct answer: answer = 758932
63 Correct 1 ms 204 KB Correct answer: answer = 1000000
64 Correct 1 ms 204 KB Correct answer: answer = 750500
65 Correct 1 ms 204 KB Correct answer: answer = 1000000
66 Correct 0 ms 204 KB Correct answer: answer = 250000
67 Correct 1 ms 204 KB Correct answer: answer = 250000
68 Correct 1 ms 204 KB Correct answer: answer = 1000000
69 Correct 1 ms 204 KB Correct answer: answer = 994009
70 Correct 1 ms 204 KB Correct answer: answer = 59315
71 Correct 1 ms 204 KB Correct answer: answer = 25454
72 Correct 1 ms 288 KB Correct answer: answer = 1504
73 Correct 1 ms 204 KB Correct answer: answer = 37486
74 Correct 1 ms 288 KB Correct answer: answer = 4284
75 Correct 1 ms 288 KB Correct answer: answer = 158008
76 Correct 1 ms 204 KB Correct answer: answer = 51860
77 Correct 1 ms 204 KB Correct answer: answer = 12985
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Correct answer: answer = 4
2 Correct 1 ms 204 KB Correct answer: answer = 4
3 Correct 1 ms 204 KB Correct answer: answer = 4
4 Correct 1 ms 204 KB Correct answer: answer = 12
5 Correct 1 ms 204 KB Correct answer: answer = 52
6 Correct 0 ms 204 KB Correct answer: answer = 210
7 Correct 1 ms 204 KB Correct answer: answer = 88
8 Correct 0 ms 332 KB Correct answer: answer = 7696
9 Correct 0 ms 204 KB Correct answer: answer = 1
10 Correct 0 ms 204 KB Correct answer: answer = 2374
11 Correct 0 ms 204 KB Correct answer: answer = 9502
12 Correct 1 ms 204 KB Correct answer: answer = 49
13 Correct 0 ms 204 KB Correct answer: answer = 151
14 Correct 1 ms 204 KB Correct answer: answer = 7550
15 Correct 1 ms 204 KB Correct answer: answer = 7220
16 Correct 1 ms 204 KB Correct answer: answer = 7550
17 Correct 1 ms 292 KB Correct answer: answer = 10000
18 Correct 1 ms 204 KB Correct answer: answer = 10000
19 Correct 0 ms 288 KB Correct answer: answer = 624
20 Correct 1 ms 204 KB Correct answer: answer = 10000
21 Correct 0 ms 204 KB Correct answer: answer = 1
22 Correct 1 ms 204 KB Correct answer: answer = 4
23 Correct 1 ms 204 KB Correct answer: answer = 1
24 Correct 0 ms 288 KB Correct answer: answer = 5
25 Correct 1 ms 204 KB Correct answer: answer = 41
26 Correct 1 ms 204 KB Correct answer: answer = 71923
27 Correct 1 ms 204 KB Correct answer: answer = 77137
28 Correct 1 ms 204 KB Correct answer: answer = 764
29 Correct 1 ms 204 KB Correct answer: answer = 250000
30 Correct 1 ms 204 KB Correct answer: answer = 500
31 Correct 0 ms 204 KB Correct answer: answer = 32
32 Correct 2 ms 204 KB Correct answer: answer = 130050
33 Correct 1 ms 204 KB Correct answer: answer = 5110
34 Correct 1 ms 204 KB Correct answer: answer = 2626
35 Correct 1 ms 288 KB Correct answer: answer = 796
36 Correct 1 ms 204 KB Correct answer: answer = 7580
37 Correct 2 ms 204 KB Correct answer: answer = 1904
38 Correct 1 ms 204 KB Correct answer: answer = 996004
39 Correct 1 ms 204 KB Correct answer: answer = 38817
40 Correct 1 ms 280 KB Correct answer: answer = 4096
41 Correct 1 ms 204 KB Correct answer: answer = 1
42 Correct 1 ms 204 KB Correct answer: answer = 1
43 Correct 1 ms 204 KB Correct answer: answer = 2040
44 Correct 1 ms 204 KB Correct answer: answer = 2
45 Correct 0 ms 204 KB Correct answer: answer = 4
46 Correct 1 ms 204 KB Correct answer: answer = 9
47 Correct 1 ms 204 KB Correct answer: answer = 9
48 Correct 1 ms 204 KB Correct answer: answer = 21
49 Correct 1 ms 284 KB Correct answer: answer = 71
50 Correct 1 ms 292 KB Correct answer: answer = 77
51 Correct 1 ms 204 KB Correct answer: answer = 400
52 Correct 1 ms 204 KB Correct answer: answer = 996004
53 Correct 0 ms 204 KB Correct answer: answer = 997310
54 Correct 1 ms 204 KB Correct answer: answer = 990781
55 Correct 1 ms 204 KB Correct answer: answer = 996545
56 Correct 1 ms 204 KB Correct answer: answer = 484
57 Correct 1 ms 204 KB Correct answer: answer = 484
58 Correct 1 ms 292 KB Correct answer: answer = 63501
59 Correct 1 ms 288 KB Correct answer: answer = 323501
60 Correct 1 ms 204 KB Correct answer: answer = 752500
61 Correct 1 ms 204 KB Correct answer: answer = 761480
62 Correct 1 ms 204 KB Correct answer: answer = 758932
63 Correct 1 ms 204 KB Correct answer: answer = 1000000
64 Correct 1 ms 204 KB Correct answer: answer = 750500
65 Correct 1 ms 204 KB Correct answer: answer = 1000000
66 Correct 0 ms 204 KB Correct answer: answer = 250000
67 Correct 1 ms 204 KB Correct answer: answer = 250000
68 Correct 1 ms 204 KB Correct answer: answer = 1000000
69 Correct 1 ms 204 KB Correct answer: answer = 994009
70 Correct 1 ms 204 KB Correct answer: answer = 59315
71 Correct 1 ms 204 KB Correct answer: answer = 25454
72 Correct 1 ms 288 KB Correct answer: answer = 1504
73 Correct 1 ms 204 KB Correct answer: answer = 37486
74 Correct 1 ms 288 KB Correct answer: answer = 4284
75 Correct 1 ms 288 KB Correct answer: answer = 158008
76 Correct 1 ms 204 KB Correct answer: answer = 51860
77 Correct 1 ms 204 KB Correct answer: answer = 12985
78 Correct 2 ms 460 KB Correct answer: answer = 997864126212
79 Correct 2 ms 460 KB Correct answer: answer = 998608411647
80 Correct 2 ms 432 KB Correct answer: answer = 995265560477
81 Correct 7 ms 560 KB Correct answer: answer = 10125000
82 Correct 7 ms 552 KB Correct answer: answer = 2291668
83 Correct 3 ms 428 KB Correct answer: answer = 42388
84 Correct 3 ms 332 KB Correct answer: answer = 10318
85 Correct 4 ms 436 KB Correct answer: answer = 3416
86 Correct 10 ms 552 KB Correct answer: answer = 331708193881
87 Correct 13 ms 532 KB Correct answer: answer = 2861193756
88 Correct 9 ms 460 KB Correct answer: answer = 114646930
89 Correct 6 ms 460 KB Correct answer: answer = 9280921
90 Correct 7 ms 588 KB Correct answer: answer = 999984053400
91 Correct 9 ms 460 KB Correct answer: answer = 750935949134
92 Correct 1 ms 428 KB Correct answer: answer = 1000000000000
93 Correct 2 ms 412 KB Correct answer: answer = 998762383161
94 Correct 10 ms 536 KB Correct answer: answer = 23017412908
95 Correct 2 ms 384 KB Correct answer: answer = 728143410622
96 Correct 1 ms 432 KB Correct answer: answer = 2
97 Correct 7 ms 460 KB Correct answer: answer = 1824916
98 Correct 8 ms 460 KB Correct answer: answer = 10680029
99 Correct 9 ms 432 KB Correct answer: answer = 18351700
100 Correct 6 ms 588 KB Correct answer: answer = 16040026
101 Correct 2 ms 460 KB Correct answer: answer = 253968628325
102 Correct 5 ms 332 KB Correct answer: answer = 10267
103 Correct 8 ms 500 KB Correct answer: answer = 2582408
104 Correct 2 ms 460 KB Correct answer: answer = 78024964781
105 Correct 2 ms 460 KB Correct answer: answer = 9866346457
106 Correct 3 ms 460 KB Correct answer: answer = 3327720949
107 Correct 2 ms 432 KB Correct answer: answer = 86064128360
108 Correct 2 ms 460 KB Correct answer: answer = 12698259150
109 Correct 9 ms 432 KB Correct answer: answer = 1185259288
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Correct answer: answer = 4
2 Correct 1 ms 204 KB Correct answer: answer = 4
3 Correct 1 ms 204 KB Correct answer: answer = 4
4 Correct 1 ms 204 KB Correct answer: answer = 12
5 Correct 1 ms 204 KB Correct answer: answer = 52
6 Correct 0 ms 204 KB Correct answer: answer = 210
7 Correct 1 ms 204 KB Correct answer: answer = 88
8 Correct 0 ms 332 KB Correct answer: answer = 7696
9 Correct 0 ms 204 KB Correct answer: answer = 1
10 Correct 0 ms 204 KB Correct answer: answer = 2374
11 Correct 0 ms 204 KB Correct answer: answer = 9502
12 Correct 1 ms 204 KB Correct answer: answer = 49
13 Correct 0 ms 204 KB Correct answer: answer = 151
14 Correct 1 ms 204 KB Correct answer: answer = 7550
15 Correct 1 ms 204 KB Correct answer: answer = 7220
16 Correct 1 ms 204 KB Correct answer: answer = 7550
17 Correct 1 ms 292 KB Correct answer: answer = 10000
18 Correct 1 ms 204 KB Correct answer: answer = 10000
19 Correct 0 ms 288 KB Correct answer: answer = 624
20 Correct 1 ms 204 KB Correct answer: answer = 10000
21 Correct 0 ms 204 KB Correct answer: answer = 1
22 Correct 1 ms 204 KB Correct answer: answer = 4
23 Correct 1 ms 204 KB Correct answer: answer = 1
24 Correct 0 ms 288 KB Correct answer: answer = 5
25 Correct 1 ms 204 KB Correct answer: answer = 41
26 Correct 1 ms 204 KB Correct answer: answer = 71923
27 Correct 1 ms 204 KB Correct answer: answer = 77137
28 Correct 1 ms 204 KB Correct answer: answer = 764
29 Correct 1 ms 204 KB Correct answer: answer = 250000
30 Correct 1 ms 204 KB Correct answer: answer = 500
31 Correct 0 ms 204 KB Correct answer: answer = 32
32 Correct 2 ms 204 KB Correct answer: answer = 130050
33 Correct 1 ms 204 KB Correct answer: answer = 5110
34 Correct 1 ms 204 KB Correct answer: answer = 2626
35 Correct 1 ms 288 KB Correct answer: answer = 796
36 Correct 1 ms 204 KB Correct answer: answer = 7580
37 Correct 2 ms 204 KB Correct answer: answer = 1904
38 Correct 1 ms 204 KB Correct answer: answer = 996004
39 Correct 1 ms 204 KB Correct answer: answer = 38817
40 Correct 1 ms 280 KB Correct answer: answer = 4096
41 Correct 1 ms 204 KB Correct answer: answer = 1
42 Correct 1 ms 204 KB Correct answer: answer = 1
43 Correct 1 ms 204 KB Correct answer: answer = 2040
44 Correct 1 ms 204 KB Correct answer: answer = 2
45 Correct 0 ms 204 KB Correct answer: answer = 4
46 Correct 1 ms 204 KB Correct answer: answer = 9
47 Correct 1 ms 204 KB Correct answer: answer = 9
48 Correct 1 ms 204 KB Correct answer: answer = 21
49 Correct 1 ms 284 KB Correct answer: answer = 71
50 Correct 1 ms 292 KB Correct answer: answer = 77
51 Correct 1 ms 204 KB Correct answer: answer = 400
52 Correct 1 ms 204 KB Correct answer: answer = 996004
53 Correct 0 ms 204 KB Correct answer: answer = 997310
54 Correct 1 ms 204 KB Correct answer: answer = 990781
55 Correct 1 ms 204 KB Correct answer: answer = 996545
56 Correct 1 ms 204 KB Correct answer: answer = 484
57 Correct 1 ms 204 KB Correct answer: answer = 484
58 Correct 1 ms 292 KB Correct answer: answer = 63501
59 Correct 1 ms 288 KB Correct answer: answer = 323501
60 Correct 1 ms 204 KB Correct answer: answer = 752500
61 Correct 1 ms 204 KB Correct answer: answer = 761480
62 Correct 1 ms 204 KB Correct answer: answer = 758932
63 Correct 1 ms 204 KB Correct answer: answer = 1000000
64 Correct 1 ms 204 KB Correct answer: answer = 750500
65 Correct 1 ms 204 KB Correct answer: answer = 1000000
66 Correct 0 ms 204 KB Correct answer: answer = 250000
67 Correct 1 ms 204 KB Correct answer: answer = 250000
68 Correct 1 ms 204 KB Correct answer: answer = 1000000
69 Correct 1 ms 204 KB Correct answer: answer = 994009
70 Correct 1 ms 204 KB Correct answer: answer = 59315
71 Correct 1 ms 204 KB Correct answer: answer = 25454
72 Correct 1 ms 288 KB Correct answer: answer = 1504
73 Correct 1 ms 204 KB Correct answer: answer = 37486
74 Correct 1 ms 288 KB Correct answer: answer = 4284
75 Correct 1 ms 288 KB Correct answer: answer = 158008
76 Correct 1 ms 204 KB Correct answer: answer = 51860
77 Correct 1 ms 204 KB Correct answer: answer = 12985
78 Correct 2 ms 460 KB Correct answer: answer = 997864126212
79 Correct 2 ms 460 KB Correct answer: answer = 998608411647
80 Correct 2 ms 432 KB Correct answer: answer = 995265560477
81 Correct 7 ms 560 KB Correct answer: answer = 10125000
82 Correct 7 ms 552 KB Correct answer: answer = 2291668
83 Correct 3 ms 428 KB Correct answer: answer = 42388
84 Correct 3 ms 332 KB Correct answer: answer = 10318
85 Correct 4 ms 436 KB Correct answer: answer = 3416
86 Correct 10 ms 552 KB Correct answer: answer = 331708193881
87 Correct 13 ms 532 KB Correct answer: answer = 2861193756
88 Correct 9 ms 460 KB Correct answer: answer = 114646930
89 Correct 6 ms 460 KB Correct answer: answer = 9280921
90 Correct 7 ms 588 KB Correct answer: answer = 999984053400
91 Correct 9 ms 460 KB Correct answer: answer = 750935949134
92 Correct 1 ms 428 KB Correct answer: answer = 1000000000000
93 Correct 2 ms 412 KB Correct answer: answer = 998762383161
94 Correct 10 ms 536 KB Correct answer: answer = 23017412908
95 Correct 2 ms 384 KB Correct answer: answer = 728143410622
96 Correct 1 ms 432 KB Correct answer: answer = 2
97 Correct 7 ms 460 KB Correct answer: answer = 1824916
98 Correct 8 ms 460 KB Correct answer: answer = 10680029
99 Correct 9 ms 432 KB Correct answer: answer = 18351700
100 Correct 6 ms 588 KB Correct answer: answer = 16040026
101 Correct 2 ms 460 KB Correct answer: answer = 253968628325
102 Correct 5 ms 332 KB Correct answer: answer = 10267
103 Correct 8 ms 500 KB Correct answer: answer = 2582408
104 Correct 2 ms 460 KB Correct answer: answer = 78024964781
105 Correct 2 ms 460 KB Correct answer: answer = 9866346457
106 Correct 3 ms 460 KB Correct answer: answer = 3327720949
107 Correct 2 ms 432 KB Correct answer: answer = 86064128360
108 Correct 2 ms 460 KB Correct answer: answer = 12698259150
109 Correct 9 ms 432 KB Correct answer: answer = 1185259288
110 Correct 14 ms 1752 KB Correct answer: answer = 999889968863
111 Correct 14 ms 1728 KB Correct answer: answer = 999861384931
112 Correct 14 ms 1832 KB Correct answer: answer = 999811809929
113 Correct 14 ms 1780 KB Correct answer: answer = 999869756441
114 Correct 86 ms 3412 KB Correct answer: answer = 1700000000
115 Correct 82 ms 3368 KB Correct answer: answer = 131666670
116 Correct 25 ms 1364 KB Correct answer: answer = 89478486
117 Correct 26 ms 1428 KB Correct answer: answer = 4971040
118 Correct 25 ms 1332 KB Correct answer: answer = 2711494
119 Correct 80 ms 3484 KB Correct answer: answer = 25252530
120 Correct 78 ms 3484 KB Correct answer: answer = 62500000
121 Correct 119 ms 2624 KB Correct answer: answer = 333175097780
122 Correct 129 ms 2728 KB Correct answer: answer = 33121180179
123 Correct 123 ms 2724 KB Correct answer: answer = 9802314015
124 Correct 84 ms 3476 KB Correct answer: answer = 32567551
125 Correct 79 ms 3540 KB Correct answer: answer = 997525000000
126 Correct 114 ms 2620 KB Correct answer: answer = 752723538884
127 Correct 17 ms 1820 KB Correct answer: answer = 1000000000000
128 Correct 13 ms 1820 KB Correct answer: answer = 999978000121
129 Correct 14 ms 1728 KB Correct answer: answer = 745986144735
130 Correct 10 ms 1796 KB Correct answer: answer = 2
131 Correct 112 ms 3476 KB Correct answer: answer = 277966670
132 Correct 76 ms 3488 KB Correct answer: answer = 2500900082
133 Correct 29 ms 1836 KB Correct answer: answer = 301248349636
134 Correct 63 ms 1712 KB Correct answer: answer = 14118891
135 Correct 15 ms 1832 KB Correct answer: answer = 14384977265
136 Correct 17 ms 1816 KB Correct answer: answer = 3681368330
137 Correct 15 ms 1844 KB Correct answer: answer = 2720316816
# Verdict Execution time Memory Grader output
1 Correct 1 ms 204 KB Correct answer: answer = 4
2 Correct 1 ms 204 KB Correct answer: answer = 4
3 Correct 1 ms 204 KB Correct answer: answer = 4
4 Correct 1 ms 204 KB Correct answer: answer = 12
5 Correct 1 ms 204 KB Correct answer: answer = 52
6 Correct 0 ms 204 KB Correct answer: answer = 210
7 Correct 1 ms 204 KB Correct answer: answer = 88
8 Correct 0 ms 332 KB Correct answer: answer = 7696
9 Correct 0 ms 204 KB Correct answer: answer = 1
10 Correct 0 ms 204 KB Correct answer: answer = 2374
11 Correct 0 ms 204 KB Correct answer: answer = 9502
12 Correct 1 ms 204 KB Correct answer: answer = 49
13 Correct 0 ms 204 KB Correct answer: answer = 151
14 Correct 1 ms 204 KB Correct answer: answer = 7550
15 Correct 1 ms 204 KB Correct answer: answer = 7220
16 Correct 1 ms 204 KB Correct answer: answer = 7550
17 Correct 1 ms 292 KB Correct answer: answer = 10000
18 Correct 1 ms 204 KB Correct answer: answer = 10000
19 Correct 0 ms 288 KB Correct answer: answer = 624
20 Correct 1 ms 204 KB Correct answer: answer = 10000
21 Correct 0 ms 204 KB Correct answer: answer = 1
22 Correct 1 ms 204 KB Correct answer: answer = 4
23 Correct 1 ms 204 KB Correct answer: answer = 1
24 Correct 0 ms 288 KB Correct answer: answer = 5
25 Correct 1 ms 204 KB Correct answer: answer = 41
26 Correct 1 ms 204 KB Correct answer: answer = 71923
27 Correct 1 ms 204 KB Correct answer: answer = 77137
28 Correct 1 ms 204 KB Correct answer: answer = 764
29 Correct 1 ms 204 KB Correct answer: answer = 250000
30 Correct 1 ms 204 KB Correct answer: answer = 500
31 Correct 0 ms 204 KB Correct answer: answer = 32
32 Correct 2 ms 204 KB Correct answer: answer = 130050
33 Correct 1 ms 204 KB Correct answer: answer = 5110
34 Correct 1 ms 204 KB Correct answer: answer = 2626
35 Correct 1 ms 288 KB Correct answer: answer = 796
36 Correct 1 ms 204 KB Correct answer: answer = 7580
37 Correct 2 ms 204 KB Correct answer: answer = 1904
38 Correct 1 ms 204 KB Correct answer: answer = 996004
39 Correct 1 ms 204 KB Correct answer: answer = 38817
40 Correct 1 ms 280 KB Correct answer: answer = 4096
41 Correct 1 ms 204 KB Correct answer: answer = 1
42 Correct 1 ms 204 KB Correct answer: answer = 1
43 Correct 1 ms 204 KB Correct answer: answer = 2040
44 Correct 1 ms 204 KB Correct answer: answer = 2
45 Correct 0 ms 204 KB Correct answer: answer = 4
46 Correct 1 ms 204 KB Correct answer: answer = 9
47 Correct 1 ms 204 KB Correct answer: answer = 9
48 Correct 1 ms 204 KB Correct answer: answer = 21
49 Correct 1 ms 284 KB Correct answer: answer = 71
50 Correct 1 ms 292 KB Correct answer: answer = 77
51 Correct 1 ms 204 KB Correct answer: answer = 400
52 Correct 1 ms 204 KB Correct answer: answer = 996004
53 Correct 0 ms 204 KB Correct answer: answer = 997310
54 Correct 1 ms 204 KB Correct answer: answer = 990781
55 Correct 1 ms 204 KB Correct answer: answer = 996545
56 Correct 1 ms 204 KB Correct answer: answer = 484
57 Correct 1 ms 204 KB Correct answer: answer = 484
58 Correct 1 ms 292 KB Correct answer: answer = 63501
59 Correct 1 ms 288 KB Correct answer: answer = 323501
60 Correct 1 ms 204 KB Correct answer: answer = 752500
61 Correct 1 ms 204 KB Correct answer: answer = 761480
62 Correct 1 ms 204 KB Correct answer: answer = 758932
63 Correct 1 ms 204 KB Correct answer: answer = 1000000
64 Correct 1 ms 204 KB Correct answer: answer = 750500
65 Correct 1 ms 204 KB Correct answer: answer = 1000000
66 Correct 0 ms 204 KB Correct answer: answer = 250000
67 Correct 1 ms 204 KB Correct answer: answer = 250000
68 Correct 1 ms 204 KB Correct answer: answer = 1000000
69 Correct 1 ms 204 KB Correct answer: answer = 994009
70 Correct 1 ms 204 KB Correct answer: answer = 59315
71 Correct 1 ms 204 KB Correct answer: answer = 25454
72 Correct 1 ms 288 KB Correct answer: answer = 1504
73 Correct 1 ms 204 KB Correct answer: answer = 37486
74 Correct 1 ms 288 KB Correct answer: answer = 4284
75 Correct 1 ms 288 KB Correct answer: answer = 158008
76 Correct 1 ms 204 KB Correct answer: answer = 51860
77 Correct 1 ms 204 KB Correct answer: answer = 12985
78 Correct 2 ms 460 KB Correct answer: answer = 997864126212
79 Correct 2 ms 460 KB Correct answer: answer = 998608411647
80 Correct 2 ms 432 KB Correct answer: answer = 995265560477
81 Correct 7 ms 560 KB Correct answer: answer = 10125000
82 Correct 7 ms 552 KB Correct answer: answer = 2291668
83 Correct 3 ms 428 KB Correct answer: answer = 42388
84 Correct 3 ms 332 KB Correct answer: answer = 10318
85 Correct 4 ms 436 KB Correct answer: answer = 3416
86 Correct 10 ms 552 KB Correct answer: answer = 331708193881
87 Correct 13 ms 532 KB Correct answer: answer = 2861193756
88 Correct 9 ms 460 KB Correct answer: answer = 114646930
89 Correct 6 ms 460 KB Correct answer: answer = 9280921
90 Correct 7 ms 588 KB Correct answer: answer = 999984053400
91 Correct 9 ms 460 KB Correct answer: answer = 750935949134
92 Correct 1 ms 428 KB Correct answer: answer = 1000000000000
93 Correct 2 ms 412 KB Correct answer: answer = 998762383161
94 Correct 10 ms 536 KB Correct answer: answer = 23017412908
95 Correct 2 ms 384 KB Correct answer: answer = 728143410622
96 Correct 1 ms 432 KB Correct answer: answer = 2
97 Correct 7 ms 460 KB Correct answer: answer = 1824916
98 Correct 8 ms 460 KB Correct answer: answer = 10680029
99 Correct 9 ms 432 KB Correct answer: answer = 18351700
100 Correct 6 ms 588 KB Correct answer: answer = 16040026
101 Correct 2 ms 460 KB Correct answer: answer = 253968628325
102 Correct 5 ms 332 KB Correct answer: answer = 10267
103 Correct 8 ms 500 KB Correct answer: answer = 2582408
104 Correct 2 ms 460 KB Correct answer: answer = 78024964781
105 Correct 2 ms 460 KB Correct answer: answer = 9866346457
106 Correct 3 ms 460 KB Correct answer: answer = 3327720949
107 Correct 2 ms 432 KB Correct answer: answer = 86064128360
108 Correct 2 ms 460 KB Correct answer: answer = 12698259150
109 Correct 9 ms 432 KB Correct answer: answer = 1185259288
110 Correct 14 ms 1752 KB Correct answer: answer = 999889968863
111 Correct 14 ms 1728 KB Correct answer: answer = 999861384931
112 Correct 14 ms 1832 KB Correct answer: answer = 999811809929
113 Correct 14 ms 1780 KB Correct answer: answer = 999869756441
114 Correct 86 ms 3412 KB Correct answer: answer = 1700000000
115 Correct 82 ms 3368 KB Correct answer: answer = 131666670
116 Correct 25 ms 1364 KB Correct answer: answer = 89478486
117 Correct 26 ms 1428 KB Correct answer: answer = 4971040
118 Correct 25 ms 1332 KB Correct answer: answer = 2711494
119 Correct 80 ms 3484 KB Correct answer: answer = 25252530
120 Correct 78 ms 3484 KB Correct answer: answer = 62500000
121 Correct 119 ms 2624 KB Correct answer: answer = 333175097780
122 Correct 129 ms 2728 KB Correct answer: answer = 33121180179
123 Correct 123 ms 2724 KB Correct answer: answer = 9802314015
124 Correct 84 ms 3476 KB Correct answer: answer = 32567551
125 Correct 79 ms 3540 KB Correct answer: answer = 997525000000
126 Correct 114 ms 2620 KB Correct answer: answer = 752723538884
127 Correct 17 ms 1820 KB Correct answer: answer = 1000000000000
128 Correct 13 ms 1820 KB Correct answer: answer = 999978000121
129 Correct 14 ms 1728 KB Correct answer: answer = 745986144735
130 Correct 10 ms 1796 KB Correct answer: answer = 2
131 Correct 112 ms 3476 KB Correct answer: answer = 277966670
132 Correct 76 ms 3488 KB Correct answer: answer = 2500900082
133 Correct 29 ms 1836 KB Correct answer: answer = 301248349636
134 Correct 63 ms 1712 KB Correct answer: answer = 14118891
135 Correct 15 ms 1832 KB Correct answer: answer = 14384977265
136 Correct 17 ms 1816 KB Correct answer: answer = 3681368330
137 Correct 15 ms 1844 KB Correct answer: answer = 2720316816
138 Correct 28 ms 3132 KB Correct answer: answer = 999976000144
139 Correct 31 ms 3132 KB Correct answer: answer = 999856102410
140 Correct 27 ms 3128 KB Correct answer: answer = 999958401531
141 Correct 29 ms 3112 KB Correct answer: answer = 999769649944
142 Correct 28 ms 3140 KB Correct answer: answer = 999874525918
143 Correct 167 ms 6460 KB Correct answer: answer = 6050000000
144 Correct 189 ms 6424 KB Correct answer: answer = 1112500000
145 Correct 87 ms 4532 KB Correct answer: answer = 4294967296
146 Correct 103 ms 4516 KB Correct answer: answer = 87652406
147 Correct 104 ms 4408 KB Correct answer: answer = 6297664
148 Correct 99 ms 4504 KB Correct answer: answer = 196612
149 Correct 229 ms 6696 KB Correct answer: answer = 15015100
150 Correct 159 ms 6712 KB Correct answer: answer = 25000000
151 Correct 228 ms 4928 KB Correct answer: answer = 333230209550
152 Correct 238 ms 5008 KB Correct answer: answer = 917123769
153 Correct 34 ms 4948 KB Correct answer: answer = 95162
154 Correct 160 ms 6644 KB Correct answer: answer = 382616191
155 Correct 161 ms 6676 KB Correct answer: answer = 990033333400
156 Correct 34 ms 5072 KB Correct answer: answer = 990000100000
157 Correct 211 ms 4780 KB Correct answer: answer = 749998188180
158 Correct 21 ms 3128 KB Correct answer: answer = 1000000000000
159 Correct 28 ms 3116 KB Correct answer: answer = 999988000036
160 Correct 27 ms 3124 KB Correct answer: answer = 744929274393
161 Correct 18 ms 3140 KB Correct answer: answer = 2
162 Correct 33 ms 5020 KB Correct answer: answer = 1300024
163 Correct 164 ms 6700 KB Correct answer: answer = 5000700010
164 Correct 53 ms 3028 KB Correct answer: answer = 354997100800
165 Correct 103 ms 3104 KB Correct answer: answer = 257000
166 Correct 91 ms 3980 KB Correct answer: answer = 3765323
167 Correct 90 ms 3512 KB Correct answer: answer = 1525903
168 Correct 28 ms 3124 KB Correct answer: answer = 67618137730
169 Correct 29 ms 3124 KB Correct answer: answer = 12656680171
170 Correct 33 ms 3132 KB Correct answer: answer = 579831736
171 Correct 86 ms 3384 KB Correct answer: answer = 23605611
172 Correct 28 ms 3140 KB Correct answer: answer = 7052481200
173 Correct 28 ms 3124 KB Correct answer: answer = 1314039500
174 Correct 30 ms 3256 KB Correct answer: answer = 302484000
175 Correct 123 ms 4308 KB Correct answer: answer = 52348480