Submission #173410

# Submission time Handle Problem Language Result Execution time Memory
173410 2020-01-04T04:15:35 Z dndhk Aliens (IOI16_aliens) C++14
100 / 100
180 ms 9716 KB
#include "aliens.h"
#include <bits/stdc++.h>

#define all(v) (v).begin(), (v).end()
#define sortv(v) sort(all(v))
#define uniqv(v) (v).erase(unique(all(v)), (v).end())
#define pb push_back
#define FI first
#define SE second
#define lb lower_bound
#define ub upper_bound
#define mp make_pair
#define test 0
#define TEST if(test)

using namespace std;

typedef long long ll;
typedef pair<int, int> pii;
typedef pair<ll, ll> pll;
typedef vector<int> vi;

const int MOD = 1000000007; // 998244353
const int INF = 2e9;
const ll INFLL = 1e12;
const int MAX_N = 100000;

int N, M, K;
vector<pii> vt;
vector<ll> C;
ll dp[MAX_N+1];
bool sf(pii a, pii b){
	if(a.first==b.first){
		return a.second>b.second;
	}
	return a.first<b.first;
}

/*struct Lichao{
	struct NODE{
		int l, r;
		ll a, b;
	};
	ll SZ;
	vector<NODE> seg;
	void add(){
		seg.pb({-1, -1, 0, INFLL});
	}
	void Init(int x){
		SZ = (ll)x;
		add();
		init(0, 0LL, SZ);
	}
	void Reset(){
		for(int i=0; i<seg.size(); i++){
			seg[i].a = 0LL; seg[i].b = INFLL;
		}
	}
	void init(int idx, ll s, ll e){
		if(s==e)	return;
		seg[idx].l = seg.size(); add();
		seg[idx].r = seg.size(); add();
		init(seg[idx].l ,s, (s+e)/2); init(seg[idx].r, (s+e)/2+1, e);
	}
	void Update(ll a, ll b){
		update(0, 0LL, SZ, a, b);
	}
	void update(int idx, ll s, ll e, ll x, ll y){
		if(s*x+y<=seg[idx].a*s+seg[idx].b && e*x+y<=seg[idx].a*e+seg[idx].b){
			seg[idx].a = x;
			seg[idx].b = y;
			return;
		}else if(s*x+y>=seg[idx].a*s+seg[idx].b && e*x+y>=seg[idx].a*e+seg[idx].b){
			return;
		}
		update(seg[idx].l, s, (s+e)/2, x, y);
		update(seg[idx].r, (s+e)/2+1, e, x, y);
	}
	ll Calc(ll x){
		return calc(0, 0LL, SZ, x);
	}
	ll calc(int idx, ll s, ll e, ll k){
		if(s==e){
			return seg[idx].a * k + seg[idx].b;
		}
		if(k<=(s+e)/2){
			return min(seg[idx].a * k + seg[idx].b, calc(seg[idx].l, s, (s+e)/2, k));
		}else{
			return min(seg[idx].a * k + seg[idx].b, calc(seg[idx].r, (s+e)/2+1, e, k));
		}
	}
}Seg;*/

struct S{
	ll a, b;
	int idx;
};

vector<S> st;
int idx = 0;

void add(ll a, ll b, int i){
	while(st.size()>=2){
		S prv = st.back(); st.pop_back();
		if((b-prv.b) * (prv.a - st.back().a) >= (a-prv.a) * (prv.b - st.back().b)){
			if(idx==st.size())	idx--;
			continue;
		}else{
			st.pb(prv);
			break;
		}
	}
	st.pb({a, b, i});
}
int cnt[MAX_N+1];

ll calc(ll x, int i){
	while(idx+1<st.size()){
		if(st[idx+1].a * x + st[idx+1].b < st[idx].a * x + st[idx].b) idx++;
		else	break;
	}
	cnt[i] = cnt[st[idx].idx]+1;
	return st[idx].a * x + st[idx].b;
}

int solve(ll x){
	//TEST cout<<x<<endl;
	st.clear();
	idx = 0;
	for(int i=0; i<vt.size(); i++){
		//TEST cout<<dp[i]<<" ";
		add(-4LL * (ll)vt[i].first, dp[i] - 2LL * C[i] + 2LL * (ll)vt[i].first * (ll)vt[i].first, i);
		dp[i+1] = 2LL * (ll)vt[i].second * (ll)vt[i].second + calc((ll)vt[i].second, i+1) + x;
	}//TEST cout<<dp[vt.size()]<<endl<<cnt[vt.size()]<<endl<<dp[vt.size()] - (ll)cnt[vt.size()] * x<<endl<<endl;
	return cnt[vt.size()];
}

long long take_photos(int n, int m, int k, std::vector<int> r, std::vector<int> c) {
	N = n; M = m; K = k;
	for(int i=0; i<N; i++){
		vt.pb({min(r[i], c[i]), max(r[i], c[i]) + 1});
	}
	sort(vt.begin(), vt.end(), sf);
	int mx = -1;
	for(int i=0 ;i<N; i++){
		if(mx>=vt[i].second){
			vt[i].second = INF;
			vt[i].first = INF;
		}else mx = max(mx, vt[i].second);
	}
	sort(vt.begin(), vt.end());
	while(!vt.empty() && vt.back().first==INF && vt.back().second==INF)	vt.pop_back();
	C.pb(0LL);
	for(int i=1; i<vt.size(); i++){
		C.pb(max(0LL, (ll)(vt[i-1].second - vt[i].first)) * max(0LL, (ll)(vt[i-1].second - vt[i].first)));
	}
	ll s = 0, e = (ll)M*(ll)M, mid;
	while(s<e){
		mid = (s+e)/2LL;
		int t = solve(2LL*mid+1LL);
		if(t<=K){
			e = mid;
		}else{
			s = mid+1LL;
		}
	}
	solve(2LL*s);
	return (dp[vt.size()] - 2LL * s * (ll)K)/2LL;
}

Compilation message

aliens.cpp: In function 'void add(ll, ll, int)':
aliens.cpp:106:10: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
    if(idx==st.size()) idx--;
       ~~~^~~~~~~~~~~
aliens.cpp: In function 'll calc(ll, int)':
aliens.cpp:118:13: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  while(idx+1<st.size()){
        ~~~~~^~~~~~~~~~
aliens.cpp: In function 'int solve(ll)':
aliens.cpp:130:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=0; i<vt.size(); i++){
               ~^~~~~~~~~~
aliens.cpp: In function 'long long int take_photos(int, int, int, std::vector<int>, std::vector<int>)':
aliens.cpp:154:16: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  for(int i=1; i<vt.size(); i++){
               ~^~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Correct answer: answer = 4
2 Correct 2 ms 504 KB Correct answer: answer = 4
3 Correct 2 ms 376 KB Correct answer: answer = 4
4 Correct 2 ms 256 KB Correct answer: answer = 12
5 Correct 2 ms 376 KB Correct answer: answer = 52
6 Correct 2 ms 256 KB Correct answer: answer = 210
7 Correct 2 ms 376 KB Correct answer: answer = 88
8 Correct 2 ms 256 KB Correct answer: answer = 7696
9 Correct 2 ms 256 KB Correct answer: answer = 1
10 Correct 2 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 256 KB Correct answer: answer = 9502
12 Correct 2 ms 504 KB Correct answer: answer = 49
13 Correct 2 ms 376 KB Correct answer: answer = 151
14 Correct 2 ms 376 KB Correct answer: answer = 7550
15 Correct 2 ms 376 KB Correct answer: answer = 7220
16 Correct 2 ms 256 KB Correct answer: answer = 7550
17 Correct 2 ms 376 KB Correct answer: answer = 10000
18 Correct 2 ms 376 KB Correct answer: answer = 10000
19 Correct 2 ms 376 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Correct answer: answer = 1
2 Correct 2 ms 376 KB Correct answer: answer = 4
3 Correct 2 ms 256 KB Correct answer: answer = 1
4 Correct 2 ms 376 KB Correct answer: answer = 5
5 Correct 2 ms 376 KB Correct answer: answer = 41
6 Correct 2 ms 376 KB Correct answer: answer = 71923
7 Correct 2 ms 380 KB Correct answer: answer = 77137
8 Correct 2 ms 376 KB Correct answer: answer = 764
9 Correct 3 ms 376 KB Correct answer: answer = 250000
10 Correct 3 ms 424 KB Correct answer: answer = 500
11 Correct 2 ms 256 KB Correct answer: answer = 32
12 Correct 2 ms 376 KB Correct answer: answer = 130050
13 Correct 2 ms 376 KB Correct answer: answer = 5110
14 Correct 2 ms 376 KB Correct answer: answer = 2626
15 Correct 2 ms 376 KB Correct answer: answer = 796
16 Correct 2 ms 376 KB Correct answer: answer = 7580
17 Correct 2 ms 376 KB Correct answer: answer = 1904
18 Correct 2 ms 376 KB Correct answer: answer = 996004
19 Correct 2 ms 376 KB Correct answer: answer = 38817
20 Correct 3 ms 376 KB Correct answer: answer = 4096
21 Correct 2 ms 376 KB Correct answer: answer = 1
22 Correct 2 ms 376 KB Correct answer: answer = 1
23 Correct 2 ms 376 KB Correct answer: answer = 2040
24 Correct 2 ms 376 KB Correct answer: answer = 2
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Correct answer: answer = 4
2 Correct 2 ms 504 KB Correct answer: answer = 4
3 Correct 2 ms 376 KB Correct answer: answer = 4
4 Correct 2 ms 256 KB Correct answer: answer = 12
5 Correct 2 ms 376 KB Correct answer: answer = 52
6 Correct 2 ms 256 KB Correct answer: answer = 210
7 Correct 2 ms 376 KB Correct answer: answer = 88
8 Correct 2 ms 256 KB Correct answer: answer = 7696
9 Correct 2 ms 256 KB Correct answer: answer = 1
10 Correct 2 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 256 KB Correct answer: answer = 9502
12 Correct 2 ms 504 KB Correct answer: answer = 49
13 Correct 2 ms 376 KB Correct answer: answer = 151
14 Correct 2 ms 376 KB Correct answer: answer = 7550
15 Correct 2 ms 376 KB Correct answer: answer = 7220
16 Correct 2 ms 256 KB Correct answer: answer = 7550
17 Correct 2 ms 376 KB Correct answer: answer = 10000
18 Correct 2 ms 376 KB Correct answer: answer = 10000
19 Correct 2 ms 376 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 256 KB Correct answer: answer = 1
22 Correct 2 ms 376 KB Correct answer: answer = 4
23 Correct 2 ms 256 KB Correct answer: answer = 1
24 Correct 2 ms 376 KB Correct answer: answer = 5
25 Correct 2 ms 376 KB Correct answer: answer = 41
26 Correct 2 ms 376 KB Correct answer: answer = 71923
27 Correct 2 ms 380 KB Correct answer: answer = 77137
28 Correct 2 ms 376 KB Correct answer: answer = 764
29 Correct 3 ms 376 KB Correct answer: answer = 250000
30 Correct 3 ms 424 KB Correct answer: answer = 500
31 Correct 2 ms 256 KB Correct answer: answer = 32
32 Correct 2 ms 376 KB Correct answer: answer = 130050
33 Correct 2 ms 376 KB Correct answer: answer = 5110
34 Correct 2 ms 376 KB Correct answer: answer = 2626
35 Correct 2 ms 376 KB Correct answer: answer = 796
36 Correct 2 ms 376 KB Correct answer: answer = 7580
37 Correct 2 ms 376 KB Correct answer: answer = 1904
38 Correct 2 ms 376 KB Correct answer: answer = 996004
39 Correct 2 ms 376 KB Correct answer: answer = 38817
40 Correct 3 ms 376 KB Correct answer: answer = 4096
41 Correct 2 ms 376 KB Correct answer: answer = 1
42 Correct 2 ms 376 KB Correct answer: answer = 1
43 Correct 2 ms 376 KB Correct answer: answer = 2040
44 Correct 2 ms 376 KB Correct answer: answer = 2
45 Correct 2 ms 376 KB Correct answer: answer = 4
46 Correct 2 ms 376 KB Correct answer: answer = 9
47 Correct 2 ms 376 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 380 KB Correct answer: answer = 71
50 Correct 2 ms 256 KB Correct answer: answer = 77
51 Correct 2 ms 376 KB Correct answer: answer = 400
52 Correct 2 ms 376 KB Correct answer: answer = 996004
53 Correct 2 ms 376 KB Correct answer: answer = 997310
54 Correct 2 ms 376 KB Correct answer: answer = 990781
55 Correct 2 ms 376 KB Correct answer: answer = 996545
56 Correct 2 ms 376 KB Correct answer: answer = 484
57 Correct 2 ms 376 KB Correct answer: answer = 484
58 Correct 2 ms 376 KB Correct answer: answer = 63501
59 Correct 2 ms 376 KB Correct answer: answer = 323501
60 Correct 2 ms 376 KB Correct answer: answer = 752500
61 Correct 2 ms 376 KB Correct answer: answer = 761480
62 Correct 2 ms 376 KB Correct answer: answer = 758932
63 Correct 2 ms 376 KB Correct answer: answer = 1000000
64 Correct 3 ms 376 KB Correct answer: answer = 750500
65 Correct 2 ms 376 KB Correct answer: answer = 1000000
66 Correct 2 ms 376 KB Correct answer: answer = 250000
67 Correct 2 ms 376 KB Correct answer: answer = 250000
68 Correct 2 ms 376 KB Correct answer: answer = 1000000
69 Correct 2 ms 380 KB Correct answer: answer = 994009
70 Correct 2 ms 376 KB Correct answer: answer = 59315
71 Correct 2 ms 376 KB Correct answer: answer = 25454
72 Correct 2 ms 376 KB Correct answer: answer = 1504
73 Correct 2 ms 376 KB Correct answer: answer = 37486
74 Correct 2 ms 376 KB Correct answer: answer = 4284
75 Correct 2 ms 376 KB Correct answer: answer = 158008
76 Correct 2 ms 376 KB Correct answer: answer = 51860
77 Correct 2 ms 376 KB Correct answer: answer = 12985
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Correct answer: answer = 4
2 Correct 2 ms 504 KB Correct answer: answer = 4
3 Correct 2 ms 376 KB Correct answer: answer = 4
4 Correct 2 ms 256 KB Correct answer: answer = 12
5 Correct 2 ms 376 KB Correct answer: answer = 52
6 Correct 2 ms 256 KB Correct answer: answer = 210
7 Correct 2 ms 376 KB Correct answer: answer = 88
8 Correct 2 ms 256 KB Correct answer: answer = 7696
9 Correct 2 ms 256 KB Correct answer: answer = 1
10 Correct 2 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 256 KB Correct answer: answer = 9502
12 Correct 2 ms 504 KB Correct answer: answer = 49
13 Correct 2 ms 376 KB Correct answer: answer = 151
14 Correct 2 ms 376 KB Correct answer: answer = 7550
15 Correct 2 ms 376 KB Correct answer: answer = 7220
16 Correct 2 ms 256 KB Correct answer: answer = 7550
17 Correct 2 ms 376 KB Correct answer: answer = 10000
18 Correct 2 ms 376 KB Correct answer: answer = 10000
19 Correct 2 ms 376 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 256 KB Correct answer: answer = 1
22 Correct 2 ms 376 KB Correct answer: answer = 4
23 Correct 2 ms 256 KB Correct answer: answer = 1
24 Correct 2 ms 376 KB Correct answer: answer = 5
25 Correct 2 ms 376 KB Correct answer: answer = 41
26 Correct 2 ms 376 KB Correct answer: answer = 71923
27 Correct 2 ms 380 KB Correct answer: answer = 77137
28 Correct 2 ms 376 KB Correct answer: answer = 764
29 Correct 3 ms 376 KB Correct answer: answer = 250000
30 Correct 3 ms 424 KB Correct answer: answer = 500
31 Correct 2 ms 256 KB Correct answer: answer = 32
32 Correct 2 ms 376 KB Correct answer: answer = 130050
33 Correct 2 ms 376 KB Correct answer: answer = 5110
34 Correct 2 ms 376 KB Correct answer: answer = 2626
35 Correct 2 ms 376 KB Correct answer: answer = 796
36 Correct 2 ms 376 KB Correct answer: answer = 7580
37 Correct 2 ms 376 KB Correct answer: answer = 1904
38 Correct 2 ms 376 KB Correct answer: answer = 996004
39 Correct 2 ms 376 KB Correct answer: answer = 38817
40 Correct 3 ms 376 KB Correct answer: answer = 4096
41 Correct 2 ms 376 KB Correct answer: answer = 1
42 Correct 2 ms 376 KB Correct answer: answer = 1
43 Correct 2 ms 376 KB Correct answer: answer = 2040
44 Correct 2 ms 376 KB Correct answer: answer = 2
45 Correct 2 ms 376 KB Correct answer: answer = 4
46 Correct 2 ms 376 KB Correct answer: answer = 9
47 Correct 2 ms 376 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 380 KB Correct answer: answer = 71
50 Correct 2 ms 256 KB Correct answer: answer = 77
51 Correct 2 ms 376 KB Correct answer: answer = 400
52 Correct 2 ms 376 KB Correct answer: answer = 996004
53 Correct 2 ms 376 KB Correct answer: answer = 997310
54 Correct 2 ms 376 KB Correct answer: answer = 990781
55 Correct 2 ms 376 KB Correct answer: answer = 996545
56 Correct 2 ms 376 KB Correct answer: answer = 484
57 Correct 2 ms 376 KB Correct answer: answer = 484
58 Correct 2 ms 376 KB Correct answer: answer = 63501
59 Correct 2 ms 376 KB Correct answer: answer = 323501
60 Correct 2 ms 376 KB Correct answer: answer = 752500
61 Correct 2 ms 376 KB Correct answer: answer = 761480
62 Correct 2 ms 376 KB Correct answer: answer = 758932
63 Correct 2 ms 376 KB Correct answer: answer = 1000000
64 Correct 3 ms 376 KB Correct answer: answer = 750500
65 Correct 2 ms 376 KB Correct answer: answer = 1000000
66 Correct 2 ms 376 KB Correct answer: answer = 250000
67 Correct 2 ms 376 KB Correct answer: answer = 250000
68 Correct 2 ms 376 KB Correct answer: answer = 1000000
69 Correct 2 ms 380 KB Correct answer: answer = 994009
70 Correct 2 ms 376 KB Correct answer: answer = 59315
71 Correct 2 ms 376 KB Correct answer: answer = 25454
72 Correct 2 ms 376 KB Correct answer: answer = 1504
73 Correct 2 ms 376 KB Correct answer: answer = 37486
74 Correct 2 ms 376 KB Correct answer: answer = 4284
75 Correct 2 ms 376 KB Correct answer: answer = 158008
76 Correct 2 ms 376 KB Correct answer: answer = 51860
77 Correct 2 ms 376 KB Correct answer: answer = 12985
78 Correct 4 ms 504 KB Correct answer: answer = 997864126212
79 Correct 4 ms 504 KB Correct answer: answer = 998608411647
80 Correct 4 ms 508 KB Correct answer: answer = 995265560477
81 Correct 6 ms 632 KB Correct answer: answer = 10125000
82 Correct 7 ms 632 KB Correct answer: answer = 2291668
83 Correct 4 ms 504 KB Correct answer: answer = 42388
84 Correct 4 ms 504 KB Correct answer: answer = 10318
85 Correct 4 ms 504 KB Correct answer: answer = 3416
86 Correct 9 ms 632 KB Correct answer: answer = 331708193881
87 Correct 9 ms 632 KB Correct answer: answer = 2861193756
88 Correct 9 ms 632 KB Correct answer: answer = 114646930
89 Correct 6 ms 760 KB Correct answer: answer = 9280921
90 Correct 8 ms 760 KB Correct answer: answer = 999984053400
91 Correct 9 ms 632 KB Correct answer: answer = 750935949134
92 Correct 3 ms 504 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 504 KB Correct answer: answer = 998762383161
94 Correct 9 ms 632 KB Correct answer: answer = 23017412908
95 Correct 4 ms 504 KB Correct answer: answer = 728143410622
96 Correct 3 ms 504 KB Correct answer: answer = 2
97 Correct 8 ms 728 KB Correct answer: answer = 1824916
98 Correct 7 ms 632 KB Correct answer: answer = 10680029
99 Correct 8 ms 760 KB Correct answer: answer = 18351700
100 Correct 8 ms 632 KB Correct answer: answer = 16040026
101 Correct 4 ms 504 KB Correct answer: answer = 253968628325
102 Correct 4 ms 508 KB Correct answer: answer = 10267
103 Correct 8 ms 760 KB Correct answer: answer = 2582408
104 Correct 4 ms 508 KB Correct answer: answer = 78024964781
105 Correct 4 ms 504 KB Correct answer: answer = 9866346457
106 Correct 4 ms 504 KB Correct answer: answer = 3327720949
107 Correct 4 ms 504 KB Correct answer: answer = 86064128360
108 Correct 4 ms 504 KB Correct answer: answer = 12698259150
109 Correct 8 ms 672 KB Correct answer: answer = 1185259288
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Correct answer: answer = 4
2 Correct 2 ms 504 KB Correct answer: answer = 4
3 Correct 2 ms 376 KB Correct answer: answer = 4
4 Correct 2 ms 256 KB Correct answer: answer = 12
5 Correct 2 ms 376 KB Correct answer: answer = 52
6 Correct 2 ms 256 KB Correct answer: answer = 210
7 Correct 2 ms 376 KB Correct answer: answer = 88
8 Correct 2 ms 256 KB Correct answer: answer = 7696
9 Correct 2 ms 256 KB Correct answer: answer = 1
10 Correct 2 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 256 KB Correct answer: answer = 9502
12 Correct 2 ms 504 KB Correct answer: answer = 49
13 Correct 2 ms 376 KB Correct answer: answer = 151
14 Correct 2 ms 376 KB Correct answer: answer = 7550
15 Correct 2 ms 376 KB Correct answer: answer = 7220
16 Correct 2 ms 256 KB Correct answer: answer = 7550
17 Correct 2 ms 376 KB Correct answer: answer = 10000
18 Correct 2 ms 376 KB Correct answer: answer = 10000
19 Correct 2 ms 376 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 256 KB Correct answer: answer = 1
22 Correct 2 ms 376 KB Correct answer: answer = 4
23 Correct 2 ms 256 KB Correct answer: answer = 1
24 Correct 2 ms 376 KB Correct answer: answer = 5
25 Correct 2 ms 376 KB Correct answer: answer = 41
26 Correct 2 ms 376 KB Correct answer: answer = 71923
27 Correct 2 ms 380 KB Correct answer: answer = 77137
28 Correct 2 ms 376 KB Correct answer: answer = 764
29 Correct 3 ms 376 KB Correct answer: answer = 250000
30 Correct 3 ms 424 KB Correct answer: answer = 500
31 Correct 2 ms 256 KB Correct answer: answer = 32
32 Correct 2 ms 376 KB Correct answer: answer = 130050
33 Correct 2 ms 376 KB Correct answer: answer = 5110
34 Correct 2 ms 376 KB Correct answer: answer = 2626
35 Correct 2 ms 376 KB Correct answer: answer = 796
36 Correct 2 ms 376 KB Correct answer: answer = 7580
37 Correct 2 ms 376 KB Correct answer: answer = 1904
38 Correct 2 ms 376 KB Correct answer: answer = 996004
39 Correct 2 ms 376 KB Correct answer: answer = 38817
40 Correct 3 ms 376 KB Correct answer: answer = 4096
41 Correct 2 ms 376 KB Correct answer: answer = 1
42 Correct 2 ms 376 KB Correct answer: answer = 1
43 Correct 2 ms 376 KB Correct answer: answer = 2040
44 Correct 2 ms 376 KB Correct answer: answer = 2
45 Correct 2 ms 376 KB Correct answer: answer = 4
46 Correct 2 ms 376 KB Correct answer: answer = 9
47 Correct 2 ms 376 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 380 KB Correct answer: answer = 71
50 Correct 2 ms 256 KB Correct answer: answer = 77
51 Correct 2 ms 376 KB Correct answer: answer = 400
52 Correct 2 ms 376 KB Correct answer: answer = 996004
53 Correct 2 ms 376 KB Correct answer: answer = 997310
54 Correct 2 ms 376 KB Correct answer: answer = 990781
55 Correct 2 ms 376 KB Correct answer: answer = 996545
56 Correct 2 ms 376 KB Correct answer: answer = 484
57 Correct 2 ms 376 KB Correct answer: answer = 484
58 Correct 2 ms 376 KB Correct answer: answer = 63501
59 Correct 2 ms 376 KB Correct answer: answer = 323501
60 Correct 2 ms 376 KB Correct answer: answer = 752500
61 Correct 2 ms 376 KB Correct answer: answer = 761480
62 Correct 2 ms 376 KB Correct answer: answer = 758932
63 Correct 2 ms 376 KB Correct answer: answer = 1000000
64 Correct 3 ms 376 KB Correct answer: answer = 750500
65 Correct 2 ms 376 KB Correct answer: answer = 1000000
66 Correct 2 ms 376 KB Correct answer: answer = 250000
67 Correct 2 ms 376 KB Correct answer: answer = 250000
68 Correct 2 ms 376 KB Correct answer: answer = 1000000
69 Correct 2 ms 380 KB Correct answer: answer = 994009
70 Correct 2 ms 376 KB Correct answer: answer = 59315
71 Correct 2 ms 376 KB Correct answer: answer = 25454
72 Correct 2 ms 376 KB Correct answer: answer = 1504
73 Correct 2 ms 376 KB Correct answer: answer = 37486
74 Correct 2 ms 376 KB Correct answer: answer = 4284
75 Correct 2 ms 376 KB Correct answer: answer = 158008
76 Correct 2 ms 376 KB Correct answer: answer = 51860
77 Correct 2 ms 376 KB Correct answer: answer = 12985
78 Correct 4 ms 504 KB Correct answer: answer = 997864126212
79 Correct 4 ms 504 KB Correct answer: answer = 998608411647
80 Correct 4 ms 508 KB Correct answer: answer = 995265560477
81 Correct 6 ms 632 KB Correct answer: answer = 10125000
82 Correct 7 ms 632 KB Correct answer: answer = 2291668
83 Correct 4 ms 504 KB Correct answer: answer = 42388
84 Correct 4 ms 504 KB Correct answer: answer = 10318
85 Correct 4 ms 504 KB Correct answer: answer = 3416
86 Correct 9 ms 632 KB Correct answer: answer = 331708193881
87 Correct 9 ms 632 KB Correct answer: answer = 2861193756
88 Correct 9 ms 632 KB Correct answer: answer = 114646930
89 Correct 6 ms 760 KB Correct answer: answer = 9280921
90 Correct 8 ms 760 KB Correct answer: answer = 999984053400
91 Correct 9 ms 632 KB Correct answer: answer = 750935949134
92 Correct 3 ms 504 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 504 KB Correct answer: answer = 998762383161
94 Correct 9 ms 632 KB Correct answer: answer = 23017412908
95 Correct 4 ms 504 KB Correct answer: answer = 728143410622
96 Correct 3 ms 504 KB Correct answer: answer = 2
97 Correct 8 ms 728 KB Correct answer: answer = 1824916
98 Correct 7 ms 632 KB Correct answer: answer = 10680029
99 Correct 8 ms 760 KB Correct answer: answer = 18351700
100 Correct 8 ms 632 KB Correct answer: answer = 16040026
101 Correct 4 ms 504 KB Correct answer: answer = 253968628325
102 Correct 4 ms 508 KB Correct answer: answer = 10267
103 Correct 8 ms 760 KB Correct answer: answer = 2582408
104 Correct 4 ms 508 KB Correct answer: answer = 78024964781
105 Correct 4 ms 504 KB Correct answer: answer = 9866346457
106 Correct 4 ms 504 KB Correct answer: answer = 3327720949
107 Correct 4 ms 504 KB Correct answer: answer = 86064128360
108 Correct 4 ms 504 KB Correct answer: answer = 12698259150
109 Correct 8 ms 672 KB Correct answer: answer = 1185259288
110 Correct 25 ms 2392 KB Correct answer: answer = 999889968863
111 Correct 24 ms 2420 KB Correct answer: answer = 999861384931
112 Correct 24 ms 2412 KB Correct answer: answer = 999811809929
113 Correct 24 ms 2432 KB Correct answer: answer = 999869756441
114 Correct 67 ms 4212 KB Correct answer: answer = 1700000000
115 Correct 69 ms 4968 KB Correct answer: answer = 131666670
116 Correct 20 ms 1720 KB Correct answer: answer = 89478486
117 Correct 22 ms 1720 KB Correct answer: answer = 4971040
118 Correct 21 ms 1780 KB Correct answer: answer = 2711494
119 Correct 70 ms 4972 KB Correct answer: answer = 25252530
120 Correct 65 ms 4972 KB Correct answer: answer = 62500000
121 Correct 90 ms 3312 KB Correct answer: answer = 333175097780
122 Correct 90 ms 2800 KB Correct answer: answer = 33121180179
123 Correct 91 ms 3316 KB Correct answer: answer = 9802314015
124 Correct 69 ms 4972 KB Correct answer: answer = 32567551
125 Correct 80 ms 5100 KB Correct answer: answer = 997525000000
126 Correct 85 ms 3184 KB Correct answer: answer = 752723538884
127 Correct 19 ms 2452 KB Correct answer: answer = 1000000000000
128 Correct 24 ms 2420 KB Correct answer: answer = 999978000121
129 Correct 24 ms 2420 KB Correct answer: answer = 745986144735
130 Correct 15 ms 1908 KB Correct answer: answer = 2
131 Correct 80 ms 4976 KB Correct answer: answer = 277966670
132 Correct 76 ms 4208 KB Correct answer: answer = 2500900082
133 Correct 31 ms 2420 KB Correct answer: answer = 301248349636
134 Correct 39 ms 2224 KB Correct answer: answer = 14118891
135 Correct 24 ms 2424 KB Correct answer: answer = 14384977265
136 Correct 25 ms 2420 KB Correct answer: answer = 3681368330
137 Correct 25 ms 2420 KB Correct answer: answer = 2720316816
# Verdict Execution time Memory Grader output
1 Correct 2 ms 256 KB Correct answer: answer = 4
2 Correct 2 ms 504 KB Correct answer: answer = 4
3 Correct 2 ms 376 KB Correct answer: answer = 4
4 Correct 2 ms 256 KB Correct answer: answer = 12
5 Correct 2 ms 376 KB Correct answer: answer = 52
6 Correct 2 ms 256 KB Correct answer: answer = 210
7 Correct 2 ms 376 KB Correct answer: answer = 88
8 Correct 2 ms 256 KB Correct answer: answer = 7696
9 Correct 2 ms 256 KB Correct answer: answer = 1
10 Correct 2 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 256 KB Correct answer: answer = 9502
12 Correct 2 ms 504 KB Correct answer: answer = 49
13 Correct 2 ms 376 KB Correct answer: answer = 151
14 Correct 2 ms 376 KB Correct answer: answer = 7550
15 Correct 2 ms 376 KB Correct answer: answer = 7220
16 Correct 2 ms 256 KB Correct answer: answer = 7550
17 Correct 2 ms 376 KB Correct answer: answer = 10000
18 Correct 2 ms 376 KB Correct answer: answer = 10000
19 Correct 2 ms 376 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 256 KB Correct answer: answer = 1
22 Correct 2 ms 376 KB Correct answer: answer = 4
23 Correct 2 ms 256 KB Correct answer: answer = 1
24 Correct 2 ms 376 KB Correct answer: answer = 5
25 Correct 2 ms 376 KB Correct answer: answer = 41
26 Correct 2 ms 376 KB Correct answer: answer = 71923
27 Correct 2 ms 380 KB Correct answer: answer = 77137
28 Correct 2 ms 376 KB Correct answer: answer = 764
29 Correct 3 ms 376 KB Correct answer: answer = 250000
30 Correct 3 ms 424 KB Correct answer: answer = 500
31 Correct 2 ms 256 KB Correct answer: answer = 32
32 Correct 2 ms 376 KB Correct answer: answer = 130050
33 Correct 2 ms 376 KB Correct answer: answer = 5110
34 Correct 2 ms 376 KB Correct answer: answer = 2626
35 Correct 2 ms 376 KB Correct answer: answer = 796
36 Correct 2 ms 376 KB Correct answer: answer = 7580
37 Correct 2 ms 376 KB Correct answer: answer = 1904
38 Correct 2 ms 376 KB Correct answer: answer = 996004
39 Correct 2 ms 376 KB Correct answer: answer = 38817
40 Correct 3 ms 376 KB Correct answer: answer = 4096
41 Correct 2 ms 376 KB Correct answer: answer = 1
42 Correct 2 ms 376 KB Correct answer: answer = 1
43 Correct 2 ms 376 KB Correct answer: answer = 2040
44 Correct 2 ms 376 KB Correct answer: answer = 2
45 Correct 2 ms 376 KB Correct answer: answer = 4
46 Correct 2 ms 376 KB Correct answer: answer = 9
47 Correct 2 ms 376 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 380 KB Correct answer: answer = 71
50 Correct 2 ms 256 KB Correct answer: answer = 77
51 Correct 2 ms 376 KB Correct answer: answer = 400
52 Correct 2 ms 376 KB Correct answer: answer = 996004
53 Correct 2 ms 376 KB Correct answer: answer = 997310
54 Correct 2 ms 376 KB Correct answer: answer = 990781
55 Correct 2 ms 376 KB Correct answer: answer = 996545
56 Correct 2 ms 376 KB Correct answer: answer = 484
57 Correct 2 ms 376 KB Correct answer: answer = 484
58 Correct 2 ms 376 KB Correct answer: answer = 63501
59 Correct 2 ms 376 KB Correct answer: answer = 323501
60 Correct 2 ms 376 KB Correct answer: answer = 752500
61 Correct 2 ms 376 KB Correct answer: answer = 761480
62 Correct 2 ms 376 KB Correct answer: answer = 758932
63 Correct 2 ms 376 KB Correct answer: answer = 1000000
64 Correct 3 ms 376 KB Correct answer: answer = 750500
65 Correct 2 ms 376 KB Correct answer: answer = 1000000
66 Correct 2 ms 376 KB Correct answer: answer = 250000
67 Correct 2 ms 376 KB Correct answer: answer = 250000
68 Correct 2 ms 376 KB Correct answer: answer = 1000000
69 Correct 2 ms 380 KB Correct answer: answer = 994009
70 Correct 2 ms 376 KB Correct answer: answer = 59315
71 Correct 2 ms 376 KB Correct answer: answer = 25454
72 Correct 2 ms 376 KB Correct answer: answer = 1504
73 Correct 2 ms 376 KB Correct answer: answer = 37486
74 Correct 2 ms 376 KB Correct answer: answer = 4284
75 Correct 2 ms 376 KB Correct answer: answer = 158008
76 Correct 2 ms 376 KB Correct answer: answer = 51860
77 Correct 2 ms 376 KB Correct answer: answer = 12985
78 Correct 4 ms 504 KB Correct answer: answer = 997864126212
79 Correct 4 ms 504 KB Correct answer: answer = 998608411647
80 Correct 4 ms 508 KB Correct answer: answer = 995265560477
81 Correct 6 ms 632 KB Correct answer: answer = 10125000
82 Correct 7 ms 632 KB Correct answer: answer = 2291668
83 Correct 4 ms 504 KB Correct answer: answer = 42388
84 Correct 4 ms 504 KB Correct answer: answer = 10318
85 Correct 4 ms 504 KB Correct answer: answer = 3416
86 Correct 9 ms 632 KB Correct answer: answer = 331708193881
87 Correct 9 ms 632 KB Correct answer: answer = 2861193756
88 Correct 9 ms 632 KB Correct answer: answer = 114646930
89 Correct 6 ms 760 KB Correct answer: answer = 9280921
90 Correct 8 ms 760 KB Correct answer: answer = 999984053400
91 Correct 9 ms 632 KB Correct answer: answer = 750935949134
92 Correct 3 ms 504 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 504 KB Correct answer: answer = 998762383161
94 Correct 9 ms 632 KB Correct answer: answer = 23017412908
95 Correct 4 ms 504 KB Correct answer: answer = 728143410622
96 Correct 3 ms 504 KB Correct answer: answer = 2
97 Correct 8 ms 728 KB Correct answer: answer = 1824916
98 Correct 7 ms 632 KB Correct answer: answer = 10680029
99 Correct 8 ms 760 KB Correct answer: answer = 18351700
100 Correct 8 ms 632 KB Correct answer: answer = 16040026
101 Correct 4 ms 504 KB Correct answer: answer = 253968628325
102 Correct 4 ms 508 KB Correct answer: answer = 10267
103 Correct 8 ms 760 KB Correct answer: answer = 2582408
104 Correct 4 ms 508 KB Correct answer: answer = 78024964781
105 Correct 4 ms 504 KB Correct answer: answer = 9866346457
106 Correct 4 ms 504 KB Correct answer: answer = 3327720949
107 Correct 4 ms 504 KB Correct answer: answer = 86064128360
108 Correct 4 ms 504 KB Correct answer: answer = 12698259150
109 Correct 8 ms 672 KB Correct answer: answer = 1185259288
110 Correct 25 ms 2392 KB Correct answer: answer = 999889968863
111 Correct 24 ms 2420 KB Correct answer: answer = 999861384931
112 Correct 24 ms 2412 KB Correct answer: answer = 999811809929
113 Correct 24 ms 2432 KB Correct answer: answer = 999869756441
114 Correct 67 ms 4212 KB Correct answer: answer = 1700000000
115 Correct 69 ms 4968 KB Correct answer: answer = 131666670
116 Correct 20 ms 1720 KB Correct answer: answer = 89478486
117 Correct 22 ms 1720 KB Correct answer: answer = 4971040
118 Correct 21 ms 1780 KB Correct answer: answer = 2711494
119 Correct 70 ms 4972 KB Correct answer: answer = 25252530
120 Correct 65 ms 4972 KB Correct answer: answer = 62500000
121 Correct 90 ms 3312 KB Correct answer: answer = 333175097780
122 Correct 90 ms 2800 KB Correct answer: answer = 33121180179
123 Correct 91 ms 3316 KB Correct answer: answer = 9802314015
124 Correct 69 ms 4972 KB Correct answer: answer = 32567551
125 Correct 80 ms 5100 KB Correct answer: answer = 997525000000
126 Correct 85 ms 3184 KB Correct answer: answer = 752723538884
127 Correct 19 ms 2452 KB Correct answer: answer = 1000000000000
128 Correct 24 ms 2420 KB Correct answer: answer = 999978000121
129 Correct 24 ms 2420 KB Correct answer: answer = 745986144735
130 Correct 15 ms 1908 KB Correct answer: answer = 2
131 Correct 80 ms 4976 KB Correct answer: answer = 277966670
132 Correct 76 ms 4208 KB Correct answer: answer = 2500900082
133 Correct 31 ms 2420 KB Correct answer: answer = 301248349636
134 Correct 39 ms 2224 KB Correct answer: answer = 14118891
135 Correct 24 ms 2424 KB Correct answer: answer = 14384977265
136 Correct 25 ms 2420 KB Correct answer: answer = 3681368330
137 Correct 25 ms 2420 KB Correct answer: answer = 2720316816
138 Correct 48 ms 4344 KB Correct answer: answer = 999976000144
139 Correct 47 ms 4344 KB Correct answer: answer = 999856102410
140 Correct 47 ms 4336 KB Correct answer: answer = 999958401531
141 Correct 47 ms 4540 KB Correct answer: answer = 999769649944
142 Correct 47 ms 4376 KB Correct answer: answer = 999874525918
143 Correct 142 ms 7916 KB Correct answer: answer = 6050000000
144 Correct 143 ms 9716 KB Correct answer: answer = 1112500000
145 Correct 79 ms 5868 KB Correct answer: answer = 4294967296
146 Correct 91 ms 5868 KB Correct answer: answer = 87652406
147 Correct 91 ms 5868 KB Correct answer: answer = 6297664
148 Correct 86 ms 5864 KB Correct answer: answer = 196612
149 Correct 147 ms 9576 KB Correct answer: answer = 15015100
150 Correct 136 ms 9576 KB Correct answer: answer = 25000000
151 Correct 172 ms 6076 KB Correct answer: answer = 333230209550
152 Correct 180 ms 6252 KB Correct answer: answer = 917123769
153 Correct 173 ms 9700 KB Correct answer: answer = 95162
154 Correct 148 ms 9676 KB Correct answer: answer = 382616191
155 Correct 160 ms 9704 KB Correct answer: answer = 990033333400
156 Correct 160 ms 9704 KB Correct answer: answer = 990000100000
157 Correct 164 ms 7916 KB Correct answer: answer = 749998188180
158 Correct 36 ms 4336 KB Correct answer: answer = 1000000000000
159 Correct 47 ms 4464 KB Correct answer: answer = 999988000036
160 Correct 50 ms 4464 KB Correct answer: answer = 744929274393
161 Correct 28 ms 3440 KB Correct answer: answer = 2
162 Correct 159 ms 9576 KB Correct answer: answer = 1300024
163 Correct 156 ms 8044 KB Correct answer: answer = 5000700010
164 Correct 63 ms 4336 KB Correct answer: answer = 354997100800
165 Correct 79 ms 5076 KB Correct answer: answer = 257000
166 Correct 82 ms 5012 KB Correct answer: answer = 3765323
167 Correct 80 ms 5096 KB Correct answer: answer = 1525903
168 Correct 47 ms 4464 KB Correct answer: answer = 67618137730
169 Correct 48 ms 4464 KB Correct answer: answer = 12656680171
170 Correct 51 ms 4464 KB Correct answer: answer = 579831736
171 Correct 86 ms 5356 KB Correct answer: answer = 23605611
172 Correct 52 ms 4336 KB Correct answer: answer = 7052481200
173 Correct 62 ms 5100 KB Correct answer: answer = 1314039500
174 Correct 72 ms 5740 KB Correct answer: answer = 302484000
175 Correct 119 ms 6648 KB Correct answer: answer = 52348480