Submission #969368

# Submission time Handle Problem Language Result Execution time Memory
969368 2024-04-25T03:55:39 Z VinhLuu Aliens (IOI16_aliens) C++17
100 / 100
179 ms 19588 KB
//#pragma GCC optimize("O3,unroll-loops")
//#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
#include <bits/stdc++.h>
//#define int long long
#define ll long long
#define fi first
#define se second
#define pb push_back
#define all(lmao) lmao.begin(), lmao.end()

using namespace std;

typedef pair<ll,ll> pii;
typedef tuple<int,int,int> tp;
const int N = 1e6 + 5;
//const int mod = 1e9 + 7;
const ll oo = 5e18;

ll n, m, k, val[N], f[5][N], pre, nx, p[N], d[N], g[N];

struct line{
    ll x, y;
    int id;
};

vector<line> hull;
int ptr = 0;

bool kt(line a, line b, line c){
    return (double)(c.y - b.y) / (double)(b.x - c.x) < (double)(b.y - a.y) / (double)(a.x - b.x);
}

ll cal(int w, ll a){
    return 1ll * hull[w].x * a + hull[w].y;
}

pii get(ll x){
    if(ptr > hull.size() - 1) ptr = hull.size() - 1;
    while(ptr < hull.size() - 1 && cal(ptr + 1, x) < cal(ptr, x)) ptr++;
    return {cal(ptr, x), hull[ptr].id};
}

void add(line x){
    while(hull.size() >= 2 && kt(hull[hull.size() - 2], hull.back(), x)) hull.pop_back();
    hull.push_back(x);
}

pii pc(ll C){
    hull.clear();
    ptr = 0;
    d[1] = 1ll * val[p[1]] * val[p[1]] + C;
    g[1] = 1;
    for(int i = 2; i <= n; i ++){
        ll X = val[p[i]] - p[i];
        ll w = 1ll * X * X - 1ll * max(0ll, val[p[i]] - p[i] + p[i - 1])
                                    * max(0ll, val[p[i]] - p[i] + p[i - 1]);
        line tmp = {2 * X, d[i - 1] + w, i - 1};
        add(tmp);
        auto kq = get(p[i]);
        d[i] = kq.fi + p[i] * p[i] + C;
        g[i] = g[kq.se] + 1;
//        cerr << i << " " << d[i] << " " << g[i] << " u\n";
        if(1ll * (p[i] - p[1] + val[p[1]]) * (p[i] - p[1] + val[p[1]]) + C <= d[i]){
            d[i] = 1ll * (p[i] - p[1] + val[p[1]]) * (p[i] - p[1] + val[p[1]]) + C;
            g[i] = 1;
        }
    }
    return {d[n], g[n]};
}

ll take_photos(int _n,int _m,int _k,vector<int> R,vector<int> C){
    n = _n, m = _m, k = _k;
    deque<int> sk;
    for(int i = 0; i < n; i ++){
        ll r = ++R[i], c = ++C[i];
        if(r <= c) val[c] = max(val[c], c - r + 1);
        else val[r] = max(val[r], r - c + 1);
    }
    for(int i = 1; i <= m; i ++){
        if(!val[i]) continue;
        while(!sk.empty() && i - val[i] + 1 <= sk.front() - val[sk.front()] + 1) sk.pop_front();
        sk.push_front(i);
    }
    vector<pii> vr;
    int t = 0;
    while(!sk.empty()){
        p[++t] = sk.back();
        sk.pop_back();
    }
    n = t;
    if(n <= k){
        ll ans = 1ll * val[p[1]] * val[p[1]];
        for(int i = 2; i <= n; i ++){
            ans += 1ll * val[p[i]] * val[p[i]] - 1ll * max(0ll, val[p[i]] - p[i] + p[i - 1]) * max(0ll, val[p[i]] - p[i] + p[i - 1]);
        }
        return ans;
    }
    if(n * k <= 1e7){
        nx = 1, pre = 0;

        for(int i = 1; i <= n; i ++) f[0][i] = 1ll * (p[i] - p[1] + val[p[1]]) * (p[i] - p[1] + val[p[1]]);


        for(int j = 2; j <= k; j ++){
            hull.clear();
            ptr = 0;
            for(int i = j; i <= n; i ++){
                ll X = val[p[i]] - p[i];
                ll w = 1ll * X * X - 1ll * max(0ll, val[p[i]] - p[i] + p[i - 1])
                                        * max(0ll, val[p[i]] - p[i] + p[i - 1]);
                line tmp = {2 * X, f[pre][i - 1] + w, i - 1};
                add(tmp);
                f[nx][i] = get(p[i]).first + p[i] * p[i];
            }
            swap(pre, nx);
        }
        return f[pre][n];
    }
//    for(int i = 1; i <= n; i ++) cout << p[i] << " " << val[p[i]] << " o\n";
    ll l = 0, r = 1e18, mid, ans = 1e18;
    while(l <= r){
        mid = (l + r) / 2;
        pii kq = pc(mid);
//        cerr << mid << " " << kq.fi << " " << kq.se << " i\n";
        if(kq.se <= k){
            r = mid - 1;
            ans = kq.fi - 1ll * k * mid;
//            if(kq.fi - 1ll * k * mid == 1660355) cerr << kq.fi << " " << mid << " " << kq.se << " dcm\n";
        }else l = mid + 1;
    }
    return ans;
}

//#define lpv
#ifdef lpv

signed main(){
    ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0);

    #define task "v"
    if(fopen(task ".inp","r")){
        freopen(task ".inp","r",stdin);
        freopen(task ".out","w",stdout);
    }

    int n, m, k; cin >> n >> m >> k;
    vector<int> r(n), c(n);
    for (int i = 0; i < n; ++i) cin >> r[i] >> c[i];

    cout << take_photos(n, m, k, r, c) << "\n";
}

#endif // lpv

Compilation message

aliens.cpp: In function 'pii get(long long int)':
aliens.cpp:38:12: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<line>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   38 |     if(ptr > hull.size() - 1) ptr = hull.size() - 1;
      |        ~~~~^~~~~~~~~~~~~~~~~
aliens.cpp:39:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<line>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   39 |     while(ptr < hull.size() - 1 && cal(ptr + 1, x) < cal(ptr, x)) ptr++;
      |           ~~~~^~~~~~~~~~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2396 KB Correct answer: answer = 4
2 Correct 1 ms 2396 KB Correct answer: answer = 4
3 Correct 1 ms 2396 KB Correct answer: answer = 4
4 Correct 1 ms 2396 KB Correct answer: answer = 12
5 Correct 1 ms 2396 KB Correct answer: answer = 52
6 Correct 1 ms 2396 KB Correct answer: answer = 210
7 Correct 1 ms 2396 KB Correct answer: answer = 88
8 Correct 1 ms 2396 KB Correct answer: answer = 7696
9 Correct 1 ms 2392 KB Correct answer: answer = 1
10 Correct 1 ms 2396 KB Correct answer: answer = 2374
11 Correct 1 ms 2396 KB Correct answer: answer = 9502
12 Correct 2 ms 2492 KB Correct answer: answer = 49
13 Correct 1 ms 2396 KB Correct answer: answer = 151
14 Correct 1 ms 2396 KB Correct answer: answer = 7550
15 Correct 1 ms 2396 KB Correct answer: answer = 7220
16 Correct 1 ms 2396 KB Correct answer: answer = 7550
17 Correct 1 ms 2396 KB Correct answer: answer = 10000
18 Correct 1 ms 2396 KB Correct answer: answer = 10000
19 Correct 1 ms 2396 KB Correct answer: answer = 624
20 Correct 1 ms 2396 KB Correct answer: answer = 10000
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2396 KB Correct answer: answer = 1
2 Correct 1 ms 4444 KB Correct answer: answer = 4
3 Correct 1 ms 2492 KB Correct answer: answer = 1
4 Correct 2 ms 6492 KB Correct answer: answer = 5
5 Correct 1 ms 6488 KB Correct answer: answer = 41
6 Correct 1 ms 6488 KB Correct answer: answer = 71923
7 Correct 1 ms 6488 KB Correct answer: answer = 77137
8 Correct 3 ms 6492 KB Correct answer: answer = 764
9 Correct 1 ms 4444 KB Correct answer: answer = 250000
10 Correct 1 ms 2392 KB Correct answer: answer = 500
11 Correct 1 ms 6492 KB Correct answer: answer = 32
12 Correct 2 ms 6492 KB Correct answer: answer = 130050
13 Correct 2 ms 6492 KB Correct answer: answer = 5110
14 Correct 2 ms 6492 KB Correct answer: answer = 2626
15 Correct 2 ms 6492 KB Correct answer: answer = 796
16 Correct 3 ms 6492 KB Correct answer: answer = 7580
17 Correct 3 ms 6492 KB Correct answer: answer = 1904
18 Correct 1 ms 4444 KB Correct answer: answer = 996004
19 Correct 1 ms 6492 KB Correct answer: answer = 38817
20 Correct 2 ms 6492 KB Correct answer: answer = 4096
21 Correct 1 ms 2396 KB Correct answer: answer = 1
22 Correct 1 ms 2396 KB Correct answer: answer = 1
23 Correct 2 ms 6492 KB Correct answer: answer = 2040
24 Correct 1 ms 2396 KB Correct answer: answer = 2
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2396 KB Correct answer: answer = 4
2 Correct 1 ms 2396 KB Correct answer: answer = 4
3 Correct 1 ms 2396 KB Correct answer: answer = 4
4 Correct 1 ms 2396 KB Correct answer: answer = 12
5 Correct 1 ms 2396 KB Correct answer: answer = 52
6 Correct 1 ms 2396 KB Correct answer: answer = 210
7 Correct 1 ms 2396 KB Correct answer: answer = 88
8 Correct 1 ms 2396 KB Correct answer: answer = 7696
9 Correct 1 ms 2392 KB Correct answer: answer = 1
10 Correct 1 ms 2396 KB Correct answer: answer = 2374
11 Correct 1 ms 2396 KB Correct answer: answer = 9502
12 Correct 2 ms 2492 KB Correct answer: answer = 49
13 Correct 1 ms 2396 KB Correct answer: answer = 151
14 Correct 1 ms 2396 KB Correct answer: answer = 7550
15 Correct 1 ms 2396 KB Correct answer: answer = 7220
16 Correct 1 ms 2396 KB Correct answer: answer = 7550
17 Correct 1 ms 2396 KB Correct answer: answer = 10000
18 Correct 1 ms 2396 KB Correct answer: answer = 10000
19 Correct 1 ms 2396 KB Correct answer: answer = 624
20 Correct 1 ms 2396 KB Correct answer: answer = 10000
21 Correct 1 ms 2396 KB Correct answer: answer = 1
22 Correct 1 ms 4444 KB Correct answer: answer = 4
23 Correct 1 ms 2492 KB Correct answer: answer = 1
24 Correct 2 ms 6492 KB Correct answer: answer = 5
25 Correct 1 ms 6488 KB Correct answer: answer = 41
26 Correct 1 ms 6488 KB Correct answer: answer = 71923
27 Correct 1 ms 6488 KB Correct answer: answer = 77137
28 Correct 3 ms 6492 KB Correct answer: answer = 764
29 Correct 1 ms 4444 KB Correct answer: answer = 250000
30 Correct 1 ms 2392 KB Correct answer: answer = 500
31 Correct 1 ms 6492 KB Correct answer: answer = 32
32 Correct 2 ms 6492 KB Correct answer: answer = 130050
33 Correct 2 ms 6492 KB Correct answer: answer = 5110
34 Correct 2 ms 6492 KB Correct answer: answer = 2626
35 Correct 2 ms 6492 KB Correct answer: answer = 796
36 Correct 3 ms 6492 KB Correct answer: answer = 7580
37 Correct 3 ms 6492 KB Correct answer: answer = 1904
38 Correct 1 ms 4444 KB Correct answer: answer = 996004
39 Correct 1 ms 6492 KB Correct answer: answer = 38817
40 Correct 2 ms 6492 KB Correct answer: answer = 4096
41 Correct 1 ms 2396 KB Correct answer: answer = 1
42 Correct 1 ms 2396 KB Correct answer: answer = 1
43 Correct 2 ms 6492 KB Correct answer: answer = 2040
44 Correct 1 ms 2396 KB Correct answer: answer = 2
45 Correct 1 ms 2392 KB Correct answer: answer = 4
46 Correct 1 ms 2396 KB Correct answer: answer = 9
47 Correct 1 ms 2392 KB Correct answer: answer = 9
48 Correct 1 ms 2392 KB Correct answer: answer = 21
49 Correct 1 ms 6492 KB Correct answer: answer = 71
50 Correct 1 ms 2396 KB Correct answer: answer = 77
51 Correct 1 ms 2392 KB Correct answer: answer = 400
52 Correct 1 ms 4444 KB Correct answer: answer = 996004
53 Correct 1 ms 2396 KB Correct answer: answer = 997310
54 Correct 1 ms 2396 KB Correct answer: answer = 990781
55 Correct 1 ms 2648 KB Correct answer: answer = 996545
56 Correct 1 ms 2392 KB Correct answer: answer = 484
57 Correct 1 ms 2396 KB Correct answer: answer = 484
58 Correct 1 ms 6492 KB Correct answer: answer = 63501
59 Correct 1 ms 6492 KB Correct answer: answer = 323501
60 Correct 2 ms 6488 KB Correct answer: answer = 752500
61 Correct 1 ms 6492 KB Correct answer: answer = 761480
62 Correct 2 ms 6492 KB Correct answer: answer = 758932
63 Correct 1 ms 2396 KB Correct answer: answer = 1000000
64 Correct 1 ms 2396 KB Correct answer: answer = 750500
65 Correct 1 ms 2396 KB Correct answer: answer = 1000000
66 Correct 1 ms 2396 KB Correct answer: answer = 250000
67 Correct 1 ms 2396 KB Correct answer: answer = 250000
68 Correct 1 ms 2392 KB Correct answer: answer = 1000000
69 Correct 1 ms 2396 KB Correct answer: answer = 994009
70 Correct 1 ms 6488 KB Correct answer: answer = 59315
71 Correct 1 ms 6492 KB Correct answer: answer = 25454
72 Correct 2 ms 6492 KB Correct answer: answer = 1504
73 Correct 1 ms 6488 KB Correct answer: answer = 37486
74 Correct 1 ms 6528 KB Correct answer: answer = 4284
75 Correct 1 ms 2644 KB Correct answer: answer = 158008
76 Correct 1 ms 2408 KB Correct answer: answer = 51860
77 Correct 1 ms 6492 KB Correct answer: answer = 12985
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2396 KB Correct answer: answer = 4
2 Correct 1 ms 2396 KB Correct answer: answer = 4
3 Correct 1 ms 2396 KB Correct answer: answer = 4
4 Correct 1 ms 2396 KB Correct answer: answer = 12
5 Correct 1 ms 2396 KB Correct answer: answer = 52
6 Correct 1 ms 2396 KB Correct answer: answer = 210
7 Correct 1 ms 2396 KB Correct answer: answer = 88
8 Correct 1 ms 2396 KB Correct answer: answer = 7696
9 Correct 1 ms 2392 KB Correct answer: answer = 1
10 Correct 1 ms 2396 KB Correct answer: answer = 2374
11 Correct 1 ms 2396 KB Correct answer: answer = 9502
12 Correct 2 ms 2492 KB Correct answer: answer = 49
13 Correct 1 ms 2396 KB Correct answer: answer = 151
14 Correct 1 ms 2396 KB Correct answer: answer = 7550
15 Correct 1 ms 2396 KB Correct answer: answer = 7220
16 Correct 1 ms 2396 KB Correct answer: answer = 7550
17 Correct 1 ms 2396 KB Correct answer: answer = 10000
18 Correct 1 ms 2396 KB Correct answer: answer = 10000
19 Correct 1 ms 2396 KB Correct answer: answer = 624
20 Correct 1 ms 2396 KB Correct answer: answer = 10000
21 Correct 1 ms 2396 KB Correct answer: answer = 1
22 Correct 1 ms 4444 KB Correct answer: answer = 4
23 Correct 1 ms 2492 KB Correct answer: answer = 1
24 Correct 2 ms 6492 KB Correct answer: answer = 5
25 Correct 1 ms 6488 KB Correct answer: answer = 41
26 Correct 1 ms 6488 KB Correct answer: answer = 71923
27 Correct 1 ms 6488 KB Correct answer: answer = 77137
28 Correct 3 ms 6492 KB Correct answer: answer = 764
29 Correct 1 ms 4444 KB Correct answer: answer = 250000
30 Correct 1 ms 2392 KB Correct answer: answer = 500
31 Correct 1 ms 6492 KB Correct answer: answer = 32
32 Correct 2 ms 6492 KB Correct answer: answer = 130050
33 Correct 2 ms 6492 KB Correct answer: answer = 5110
34 Correct 2 ms 6492 KB Correct answer: answer = 2626
35 Correct 2 ms 6492 KB Correct answer: answer = 796
36 Correct 3 ms 6492 KB Correct answer: answer = 7580
37 Correct 3 ms 6492 KB Correct answer: answer = 1904
38 Correct 1 ms 4444 KB Correct answer: answer = 996004
39 Correct 1 ms 6492 KB Correct answer: answer = 38817
40 Correct 2 ms 6492 KB Correct answer: answer = 4096
41 Correct 1 ms 2396 KB Correct answer: answer = 1
42 Correct 1 ms 2396 KB Correct answer: answer = 1
43 Correct 2 ms 6492 KB Correct answer: answer = 2040
44 Correct 1 ms 2396 KB Correct answer: answer = 2
45 Correct 1 ms 2392 KB Correct answer: answer = 4
46 Correct 1 ms 2396 KB Correct answer: answer = 9
47 Correct 1 ms 2392 KB Correct answer: answer = 9
48 Correct 1 ms 2392 KB Correct answer: answer = 21
49 Correct 1 ms 6492 KB Correct answer: answer = 71
50 Correct 1 ms 2396 KB Correct answer: answer = 77
51 Correct 1 ms 2392 KB Correct answer: answer = 400
52 Correct 1 ms 4444 KB Correct answer: answer = 996004
53 Correct 1 ms 2396 KB Correct answer: answer = 997310
54 Correct 1 ms 2396 KB Correct answer: answer = 990781
55 Correct 1 ms 2648 KB Correct answer: answer = 996545
56 Correct 1 ms 2392 KB Correct answer: answer = 484
57 Correct 1 ms 2396 KB Correct answer: answer = 484
58 Correct 1 ms 6492 KB Correct answer: answer = 63501
59 Correct 1 ms 6492 KB Correct answer: answer = 323501
60 Correct 2 ms 6488 KB Correct answer: answer = 752500
61 Correct 1 ms 6492 KB Correct answer: answer = 761480
62 Correct 2 ms 6492 KB Correct answer: answer = 758932
63 Correct 1 ms 2396 KB Correct answer: answer = 1000000
64 Correct 1 ms 2396 KB Correct answer: answer = 750500
65 Correct 1 ms 2396 KB Correct answer: answer = 1000000
66 Correct 1 ms 2396 KB Correct answer: answer = 250000
67 Correct 1 ms 2396 KB Correct answer: answer = 250000
68 Correct 1 ms 2392 KB Correct answer: answer = 1000000
69 Correct 1 ms 2396 KB Correct answer: answer = 994009
70 Correct 1 ms 6488 KB Correct answer: answer = 59315
71 Correct 1 ms 6492 KB Correct answer: answer = 25454
72 Correct 2 ms 6492 KB Correct answer: answer = 1504
73 Correct 1 ms 6488 KB Correct answer: answer = 37486
74 Correct 1 ms 6528 KB Correct answer: answer = 4284
75 Correct 1 ms 2644 KB Correct answer: answer = 158008
76 Correct 1 ms 2408 KB Correct answer: answer = 51860
77 Correct 1 ms 6492 KB Correct answer: answer = 12985
78 Correct 5 ms 12636 KB Correct answer: answer = 997864126212
79 Correct 4 ms 8540 KB Correct answer: answer = 998608411647
80 Correct 5 ms 8284 KB Correct answer: answer = 995265560477
81 Correct 2 ms 6748 KB Correct answer: answer = 10125000
82 Correct 2 ms 6912 KB Correct answer: answer = 2291668
83 Correct 5 ms 6744 KB Correct answer: answer = 42388
84 Correct 14 ms 6748 KB Correct answer: answer = 10318
85 Correct 34 ms 6752 KB Correct answer: answer = 3416
86 Correct 6 ms 13404 KB Correct answer: answer = 331708193881
87 Correct 30 ms 13512 KB Correct answer: answer = 2861193756
88 Correct 110 ms 13408 KB Correct answer: answer = 114646930
89 Correct 5 ms 6752 KB Correct answer: answer = 9280921
90 Correct 22 ms 6964 KB Correct answer: answer = 999984053400
91 Correct 95 ms 10656 KB Correct answer: answer = 750935949134
92 Correct 3 ms 2648 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 6236 KB Correct answer: answer = 998762383161
94 Correct 10 ms 13560 KB Correct answer: answer = 23017412908
95 Correct 5 ms 8540 KB Correct answer: answer = 728143410622
96 Correct 2 ms 2396 KB Correct answer: answer = 2
97 Correct 3 ms 6748 KB Correct answer: answer = 1824916
98 Correct 35 ms 7600 KB Correct answer: answer = 10680029
99 Correct 22 ms 7772 KB Correct answer: answer = 18351700
100 Correct 3 ms 6744 KB Correct answer: answer = 16040026
101 Correct 4 ms 6600 KB Correct answer: answer = 253968628325
102 Correct 32 ms 6736 KB Correct answer: answer = 10267
103 Correct 102 ms 10884 KB Correct answer: answer = 2582408
104 Correct 4 ms 9308 KB Correct answer: answer = 78024964781
105 Correct 4 ms 8540 KB Correct answer: answer = 9866346457
106 Correct 5 ms 10072 KB Correct answer: answer = 3327720949
107 Correct 6 ms 8540 KB Correct answer: answer = 86064128360
108 Correct 5 ms 8796 KB Correct answer: answer = 12698259150
109 Correct 105 ms 14392 KB Correct answer: answer = 1185259288
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2396 KB Correct answer: answer = 4
2 Correct 1 ms 2396 KB Correct answer: answer = 4
3 Correct 1 ms 2396 KB Correct answer: answer = 4
4 Correct 1 ms 2396 KB Correct answer: answer = 12
5 Correct 1 ms 2396 KB Correct answer: answer = 52
6 Correct 1 ms 2396 KB Correct answer: answer = 210
7 Correct 1 ms 2396 KB Correct answer: answer = 88
8 Correct 1 ms 2396 KB Correct answer: answer = 7696
9 Correct 1 ms 2392 KB Correct answer: answer = 1
10 Correct 1 ms 2396 KB Correct answer: answer = 2374
11 Correct 1 ms 2396 KB Correct answer: answer = 9502
12 Correct 2 ms 2492 KB Correct answer: answer = 49
13 Correct 1 ms 2396 KB Correct answer: answer = 151
14 Correct 1 ms 2396 KB Correct answer: answer = 7550
15 Correct 1 ms 2396 KB Correct answer: answer = 7220
16 Correct 1 ms 2396 KB Correct answer: answer = 7550
17 Correct 1 ms 2396 KB Correct answer: answer = 10000
18 Correct 1 ms 2396 KB Correct answer: answer = 10000
19 Correct 1 ms 2396 KB Correct answer: answer = 624
20 Correct 1 ms 2396 KB Correct answer: answer = 10000
21 Correct 1 ms 2396 KB Correct answer: answer = 1
22 Correct 1 ms 4444 KB Correct answer: answer = 4
23 Correct 1 ms 2492 KB Correct answer: answer = 1
24 Correct 2 ms 6492 KB Correct answer: answer = 5
25 Correct 1 ms 6488 KB Correct answer: answer = 41
26 Correct 1 ms 6488 KB Correct answer: answer = 71923
27 Correct 1 ms 6488 KB Correct answer: answer = 77137
28 Correct 3 ms 6492 KB Correct answer: answer = 764
29 Correct 1 ms 4444 KB Correct answer: answer = 250000
30 Correct 1 ms 2392 KB Correct answer: answer = 500
31 Correct 1 ms 6492 KB Correct answer: answer = 32
32 Correct 2 ms 6492 KB Correct answer: answer = 130050
33 Correct 2 ms 6492 KB Correct answer: answer = 5110
34 Correct 2 ms 6492 KB Correct answer: answer = 2626
35 Correct 2 ms 6492 KB Correct answer: answer = 796
36 Correct 3 ms 6492 KB Correct answer: answer = 7580
37 Correct 3 ms 6492 KB Correct answer: answer = 1904
38 Correct 1 ms 4444 KB Correct answer: answer = 996004
39 Correct 1 ms 6492 KB Correct answer: answer = 38817
40 Correct 2 ms 6492 KB Correct answer: answer = 4096
41 Correct 1 ms 2396 KB Correct answer: answer = 1
42 Correct 1 ms 2396 KB Correct answer: answer = 1
43 Correct 2 ms 6492 KB Correct answer: answer = 2040
44 Correct 1 ms 2396 KB Correct answer: answer = 2
45 Correct 1 ms 2392 KB Correct answer: answer = 4
46 Correct 1 ms 2396 KB Correct answer: answer = 9
47 Correct 1 ms 2392 KB Correct answer: answer = 9
48 Correct 1 ms 2392 KB Correct answer: answer = 21
49 Correct 1 ms 6492 KB Correct answer: answer = 71
50 Correct 1 ms 2396 KB Correct answer: answer = 77
51 Correct 1 ms 2392 KB Correct answer: answer = 400
52 Correct 1 ms 4444 KB Correct answer: answer = 996004
53 Correct 1 ms 2396 KB Correct answer: answer = 997310
54 Correct 1 ms 2396 KB Correct answer: answer = 990781
55 Correct 1 ms 2648 KB Correct answer: answer = 996545
56 Correct 1 ms 2392 KB Correct answer: answer = 484
57 Correct 1 ms 2396 KB Correct answer: answer = 484
58 Correct 1 ms 6492 KB Correct answer: answer = 63501
59 Correct 1 ms 6492 KB Correct answer: answer = 323501
60 Correct 2 ms 6488 KB Correct answer: answer = 752500
61 Correct 1 ms 6492 KB Correct answer: answer = 761480
62 Correct 2 ms 6492 KB Correct answer: answer = 758932
63 Correct 1 ms 2396 KB Correct answer: answer = 1000000
64 Correct 1 ms 2396 KB Correct answer: answer = 750500
65 Correct 1 ms 2396 KB Correct answer: answer = 1000000
66 Correct 1 ms 2396 KB Correct answer: answer = 250000
67 Correct 1 ms 2396 KB Correct answer: answer = 250000
68 Correct 1 ms 2392 KB Correct answer: answer = 1000000
69 Correct 1 ms 2396 KB Correct answer: answer = 994009
70 Correct 1 ms 6488 KB Correct answer: answer = 59315
71 Correct 1 ms 6492 KB Correct answer: answer = 25454
72 Correct 2 ms 6492 KB Correct answer: answer = 1504
73 Correct 1 ms 6488 KB Correct answer: answer = 37486
74 Correct 1 ms 6528 KB Correct answer: answer = 4284
75 Correct 1 ms 2644 KB Correct answer: answer = 158008
76 Correct 1 ms 2408 KB Correct answer: answer = 51860
77 Correct 1 ms 6492 KB Correct answer: answer = 12985
78 Correct 5 ms 12636 KB Correct answer: answer = 997864126212
79 Correct 4 ms 8540 KB Correct answer: answer = 998608411647
80 Correct 5 ms 8284 KB Correct answer: answer = 995265560477
81 Correct 2 ms 6748 KB Correct answer: answer = 10125000
82 Correct 2 ms 6912 KB Correct answer: answer = 2291668
83 Correct 5 ms 6744 KB Correct answer: answer = 42388
84 Correct 14 ms 6748 KB Correct answer: answer = 10318
85 Correct 34 ms 6752 KB Correct answer: answer = 3416
86 Correct 6 ms 13404 KB Correct answer: answer = 331708193881
87 Correct 30 ms 13512 KB Correct answer: answer = 2861193756
88 Correct 110 ms 13408 KB Correct answer: answer = 114646930
89 Correct 5 ms 6752 KB Correct answer: answer = 9280921
90 Correct 22 ms 6964 KB Correct answer: answer = 999984053400
91 Correct 95 ms 10656 KB Correct answer: answer = 750935949134
92 Correct 3 ms 2648 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 6236 KB Correct answer: answer = 998762383161
94 Correct 10 ms 13560 KB Correct answer: answer = 23017412908
95 Correct 5 ms 8540 KB Correct answer: answer = 728143410622
96 Correct 2 ms 2396 KB Correct answer: answer = 2
97 Correct 3 ms 6748 KB Correct answer: answer = 1824916
98 Correct 35 ms 7600 KB Correct answer: answer = 10680029
99 Correct 22 ms 7772 KB Correct answer: answer = 18351700
100 Correct 3 ms 6744 KB Correct answer: answer = 16040026
101 Correct 4 ms 6600 KB Correct answer: answer = 253968628325
102 Correct 32 ms 6736 KB Correct answer: answer = 10267
103 Correct 102 ms 10884 KB Correct answer: answer = 2582408
104 Correct 4 ms 9308 KB Correct answer: answer = 78024964781
105 Correct 4 ms 8540 KB Correct answer: answer = 9866346457
106 Correct 5 ms 10072 KB Correct answer: answer = 3327720949
107 Correct 6 ms 8540 KB Correct answer: answer = 86064128360
108 Correct 5 ms 8796 KB Correct answer: answer = 12698259150
109 Correct 105 ms 14392 KB Correct answer: answer = 1185259288
110 Correct 15 ms 15452 KB Correct answer: answer = 999889968863
111 Correct 16 ms 15452 KB Correct answer: answer = 999861384931
112 Correct 17 ms 11348 KB Correct answer: answer = 999811809929
113 Correct 15 ms 11344 KB Correct answer: answer = 999869756441
114 Correct 14 ms 10004 KB Correct answer: answer = 1700000000
115 Correct 26 ms 10004 KB Correct answer: answer = 131666670
116 Correct 5 ms 7696 KB Correct answer: answer = 89478486
117 Correct 18 ms 7756 KB Correct answer: answer = 4971040
118 Correct 30 ms 7756 KB Correct answer: answer = 2711494
119 Correct 93 ms 10256 KB Correct answer: answer = 25252530
120 Correct 42 ms 10000 KB Correct answer: answer = 62500000
121 Correct 18 ms 15704 KB Correct answer: answer = 333175097780
122 Correct 61 ms 15700 KB Correct answer: answer = 33121180179
123 Correct 159 ms 16220 KB Correct answer: answer = 9802314015
124 Correct 73 ms 10004 KB Correct answer: answer = 32567551
125 Correct 105 ms 10004 KB Correct answer: answer = 997525000000
126 Correct 141 ms 12000 KB Correct answer: answer = 752723538884
127 Correct 12 ms 4440 KB Correct answer: answer = 1000000000000
128 Correct 12 ms 7516 KB Correct answer: answer = 999978000121
129 Correct 16 ms 15356 KB Correct answer: answer = 745986144735
130 Correct 8 ms 3420 KB Correct answer: answer = 2
131 Correct 18 ms 9984 KB Correct answer: answer = 277966670
132 Correct 13 ms 10156 KB Correct answer: answer = 2500900082
133 Correct 11 ms 8276 KB Correct answer: answer = 301248349636
134 Correct 67 ms 8072 KB Correct answer: answer = 14118891
135 Correct 15 ms 9040 KB Correct answer: answer = 14384977265
136 Correct 14 ms 10572 KB Correct answer: answer = 3681368330
137 Correct 15 ms 11100 KB Correct answer: answer = 2720316816
# Verdict Execution time Memory Grader output
1 Correct 1 ms 2396 KB Correct answer: answer = 4
2 Correct 1 ms 2396 KB Correct answer: answer = 4
3 Correct 1 ms 2396 KB Correct answer: answer = 4
4 Correct 1 ms 2396 KB Correct answer: answer = 12
5 Correct 1 ms 2396 KB Correct answer: answer = 52
6 Correct 1 ms 2396 KB Correct answer: answer = 210
7 Correct 1 ms 2396 KB Correct answer: answer = 88
8 Correct 1 ms 2396 KB Correct answer: answer = 7696
9 Correct 1 ms 2392 KB Correct answer: answer = 1
10 Correct 1 ms 2396 KB Correct answer: answer = 2374
11 Correct 1 ms 2396 KB Correct answer: answer = 9502
12 Correct 2 ms 2492 KB Correct answer: answer = 49
13 Correct 1 ms 2396 KB Correct answer: answer = 151
14 Correct 1 ms 2396 KB Correct answer: answer = 7550
15 Correct 1 ms 2396 KB Correct answer: answer = 7220
16 Correct 1 ms 2396 KB Correct answer: answer = 7550
17 Correct 1 ms 2396 KB Correct answer: answer = 10000
18 Correct 1 ms 2396 KB Correct answer: answer = 10000
19 Correct 1 ms 2396 KB Correct answer: answer = 624
20 Correct 1 ms 2396 KB Correct answer: answer = 10000
21 Correct 1 ms 2396 KB Correct answer: answer = 1
22 Correct 1 ms 4444 KB Correct answer: answer = 4
23 Correct 1 ms 2492 KB Correct answer: answer = 1
24 Correct 2 ms 6492 KB Correct answer: answer = 5
25 Correct 1 ms 6488 KB Correct answer: answer = 41
26 Correct 1 ms 6488 KB Correct answer: answer = 71923
27 Correct 1 ms 6488 KB Correct answer: answer = 77137
28 Correct 3 ms 6492 KB Correct answer: answer = 764
29 Correct 1 ms 4444 KB Correct answer: answer = 250000
30 Correct 1 ms 2392 KB Correct answer: answer = 500
31 Correct 1 ms 6492 KB Correct answer: answer = 32
32 Correct 2 ms 6492 KB Correct answer: answer = 130050
33 Correct 2 ms 6492 KB Correct answer: answer = 5110
34 Correct 2 ms 6492 KB Correct answer: answer = 2626
35 Correct 2 ms 6492 KB Correct answer: answer = 796
36 Correct 3 ms 6492 KB Correct answer: answer = 7580
37 Correct 3 ms 6492 KB Correct answer: answer = 1904
38 Correct 1 ms 4444 KB Correct answer: answer = 996004
39 Correct 1 ms 6492 KB Correct answer: answer = 38817
40 Correct 2 ms 6492 KB Correct answer: answer = 4096
41 Correct 1 ms 2396 KB Correct answer: answer = 1
42 Correct 1 ms 2396 KB Correct answer: answer = 1
43 Correct 2 ms 6492 KB Correct answer: answer = 2040
44 Correct 1 ms 2396 KB Correct answer: answer = 2
45 Correct 1 ms 2392 KB Correct answer: answer = 4
46 Correct 1 ms 2396 KB Correct answer: answer = 9
47 Correct 1 ms 2392 KB Correct answer: answer = 9
48 Correct 1 ms 2392 KB Correct answer: answer = 21
49 Correct 1 ms 6492 KB Correct answer: answer = 71
50 Correct 1 ms 2396 KB Correct answer: answer = 77
51 Correct 1 ms 2392 KB Correct answer: answer = 400
52 Correct 1 ms 4444 KB Correct answer: answer = 996004
53 Correct 1 ms 2396 KB Correct answer: answer = 997310
54 Correct 1 ms 2396 KB Correct answer: answer = 990781
55 Correct 1 ms 2648 KB Correct answer: answer = 996545
56 Correct 1 ms 2392 KB Correct answer: answer = 484
57 Correct 1 ms 2396 KB Correct answer: answer = 484
58 Correct 1 ms 6492 KB Correct answer: answer = 63501
59 Correct 1 ms 6492 KB Correct answer: answer = 323501
60 Correct 2 ms 6488 KB Correct answer: answer = 752500
61 Correct 1 ms 6492 KB Correct answer: answer = 761480
62 Correct 2 ms 6492 KB Correct answer: answer = 758932
63 Correct 1 ms 2396 KB Correct answer: answer = 1000000
64 Correct 1 ms 2396 KB Correct answer: answer = 750500
65 Correct 1 ms 2396 KB Correct answer: answer = 1000000
66 Correct 1 ms 2396 KB Correct answer: answer = 250000
67 Correct 1 ms 2396 KB Correct answer: answer = 250000
68 Correct 1 ms 2392 KB Correct answer: answer = 1000000
69 Correct 1 ms 2396 KB Correct answer: answer = 994009
70 Correct 1 ms 6488 KB Correct answer: answer = 59315
71 Correct 1 ms 6492 KB Correct answer: answer = 25454
72 Correct 2 ms 6492 KB Correct answer: answer = 1504
73 Correct 1 ms 6488 KB Correct answer: answer = 37486
74 Correct 1 ms 6528 KB Correct answer: answer = 4284
75 Correct 1 ms 2644 KB Correct answer: answer = 158008
76 Correct 1 ms 2408 KB Correct answer: answer = 51860
77 Correct 1 ms 6492 KB Correct answer: answer = 12985
78 Correct 5 ms 12636 KB Correct answer: answer = 997864126212
79 Correct 4 ms 8540 KB Correct answer: answer = 998608411647
80 Correct 5 ms 8284 KB Correct answer: answer = 995265560477
81 Correct 2 ms 6748 KB Correct answer: answer = 10125000
82 Correct 2 ms 6912 KB Correct answer: answer = 2291668
83 Correct 5 ms 6744 KB Correct answer: answer = 42388
84 Correct 14 ms 6748 KB Correct answer: answer = 10318
85 Correct 34 ms 6752 KB Correct answer: answer = 3416
86 Correct 6 ms 13404 KB Correct answer: answer = 331708193881
87 Correct 30 ms 13512 KB Correct answer: answer = 2861193756
88 Correct 110 ms 13408 KB Correct answer: answer = 114646930
89 Correct 5 ms 6752 KB Correct answer: answer = 9280921
90 Correct 22 ms 6964 KB Correct answer: answer = 999984053400
91 Correct 95 ms 10656 KB Correct answer: answer = 750935949134
92 Correct 3 ms 2648 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 6236 KB Correct answer: answer = 998762383161
94 Correct 10 ms 13560 KB Correct answer: answer = 23017412908
95 Correct 5 ms 8540 KB Correct answer: answer = 728143410622
96 Correct 2 ms 2396 KB Correct answer: answer = 2
97 Correct 3 ms 6748 KB Correct answer: answer = 1824916
98 Correct 35 ms 7600 KB Correct answer: answer = 10680029
99 Correct 22 ms 7772 KB Correct answer: answer = 18351700
100 Correct 3 ms 6744 KB Correct answer: answer = 16040026
101 Correct 4 ms 6600 KB Correct answer: answer = 253968628325
102 Correct 32 ms 6736 KB Correct answer: answer = 10267
103 Correct 102 ms 10884 KB Correct answer: answer = 2582408
104 Correct 4 ms 9308 KB Correct answer: answer = 78024964781
105 Correct 4 ms 8540 KB Correct answer: answer = 9866346457
106 Correct 5 ms 10072 KB Correct answer: answer = 3327720949
107 Correct 6 ms 8540 KB Correct answer: answer = 86064128360
108 Correct 5 ms 8796 KB Correct answer: answer = 12698259150
109 Correct 105 ms 14392 KB Correct answer: answer = 1185259288
110 Correct 15 ms 15452 KB Correct answer: answer = 999889968863
111 Correct 16 ms 15452 KB Correct answer: answer = 999861384931
112 Correct 17 ms 11348 KB Correct answer: answer = 999811809929
113 Correct 15 ms 11344 KB Correct answer: answer = 999869756441
114 Correct 14 ms 10004 KB Correct answer: answer = 1700000000
115 Correct 26 ms 10004 KB Correct answer: answer = 131666670
116 Correct 5 ms 7696 KB Correct answer: answer = 89478486
117 Correct 18 ms 7756 KB Correct answer: answer = 4971040
118 Correct 30 ms 7756 KB Correct answer: answer = 2711494
119 Correct 93 ms 10256 KB Correct answer: answer = 25252530
120 Correct 42 ms 10000 KB Correct answer: answer = 62500000
121 Correct 18 ms 15704 KB Correct answer: answer = 333175097780
122 Correct 61 ms 15700 KB Correct answer: answer = 33121180179
123 Correct 159 ms 16220 KB Correct answer: answer = 9802314015
124 Correct 73 ms 10004 KB Correct answer: answer = 32567551
125 Correct 105 ms 10004 KB Correct answer: answer = 997525000000
126 Correct 141 ms 12000 KB Correct answer: answer = 752723538884
127 Correct 12 ms 4440 KB Correct answer: answer = 1000000000000
128 Correct 12 ms 7516 KB Correct answer: answer = 999978000121
129 Correct 16 ms 15356 KB Correct answer: answer = 745986144735
130 Correct 8 ms 3420 KB Correct answer: answer = 2
131 Correct 18 ms 9984 KB Correct answer: answer = 277966670
132 Correct 13 ms 10156 KB Correct answer: answer = 2500900082
133 Correct 11 ms 8276 KB Correct answer: answer = 301248349636
134 Correct 67 ms 8072 KB Correct answer: answer = 14118891
135 Correct 15 ms 9040 KB Correct answer: answer = 14384977265
136 Correct 14 ms 10572 KB Correct answer: answer = 3681368330
137 Correct 15 ms 11100 KB Correct answer: answer = 2720316816
138 Correct 24 ms 14800 KB Correct answer: answer = 999976000144
139 Correct 26 ms 12632 KB Correct answer: answer = 999856102410
140 Correct 28 ms 12832 KB Correct answer: answer = 999958401531
141 Correct 24 ms 12628 KB Correct answer: answer = 999769649944
142 Correct 30 ms 12628 KB Correct answer: answer = 999874525918
143 Correct 21 ms 13212 KB Correct answer: answer = 6050000000
144 Correct 33 ms 13072 KB Correct answer: answer = 1112500000
145 Correct 14 ms 6740 KB Correct answer: answer = 4294967296
146 Correct 75 ms 10260 KB Correct answer: answer = 87652406
147 Correct 78 ms 10640 KB Correct answer: answer = 6297664
148 Correct 78 ms 10644 KB Correct answer: answer = 196612
149 Correct 120 ms 14596 KB Correct answer: answer = 15015100
150 Correct 125 ms 14456 KB Correct answer: answer = 25000000
151 Correct 28 ms 17236 KB Correct answer: answer = 333230209550
152 Correct 179 ms 19588 KB Correct answer: answer = 917123769
153 Correct 22 ms 13136 KB Correct answer: answer = 95162
154 Correct 110 ms 13840 KB Correct answer: answer = 382616191
155 Correct 120 ms 14696 KB Correct answer: answer = 990033333400
156 Correct 18 ms 6080 KB Correct answer: answer = 990000100000
157 Correct 163 ms 17032 KB Correct answer: answer = 749998188180
158 Correct 18 ms 5976 KB Correct answer: answer = 1000000000000
159 Correct 21 ms 9304 KB Correct answer: answer = 999988000036
160 Correct 27 ms 13144 KB Correct answer: answer = 744929274393
161 Correct 13 ms 4444 KB Correct answer: answer = 2
162 Correct 17 ms 6412 KB Correct answer: answer = 1300024
163 Correct 23 ms 14860 KB Correct answer: answer = 5000700010
164 Correct 19 ms 10212 KB Correct answer: answer = 354997100800
165 Correct 72 ms 10276 KB Correct answer: answer = 257000
166 Correct 73 ms 14612 KB Correct answer: answer = 3765323
167 Correct 68 ms 11636 KB Correct answer: answer = 1525903
168 Correct 21 ms 12480 KB Correct answer: answer = 67618137730
169 Correct 23 ms 12892 KB Correct answer: answer = 12656680171
170 Correct 50 ms 13656 KB Correct answer: answer = 579831736
171 Correct 72 ms 18000 KB Correct answer: answer = 23605611
172 Correct 22 ms 13136 KB Correct answer: answer = 7052481200
173 Correct 23 ms 13144 KB Correct answer: answer = 1314039500
174 Correct 27 ms 13136 KB Correct answer: answer = 302484000
175 Correct 85 ms 18508 KB Correct answer: answer = 52348480