Submission #106291

# Submission time Handle Problem Language Result Execution time Memory
106291 2019-04-17T19:20:30 Z evpipis Aliens (IOI16_aliens) C++11
100 / 100
183 ms 10988 KB
//#define TEST

#ifndef TEST
#include "aliens.h"
#endif
#include <bits/stdc++.h>
using namespace std;

#define fi first
#define se second
#define pb push_back
#define mp make_pair
typedef long long ll;
typedef pair<int, int> ii;
typedef pair<ll, ll> pll;

inline ll sq(ll x){
    return x*x;
}

const int len = 1e5+5;
const ll inf = 1e15;
int n, m, k, po;
ii arr[len];
vector<ii> vec;
vector<pair<pll, int> > con;
ll com[len];
pair<ll, int> dp[len];

ll func(pll line, int x){
    return x*line.fi + line.se;
}

bool bad(pair<pll, int> a, pair<pll, int> b, pair<pll, int> c){
    if ((b.fi.se-a.fi.se)*(b.fi.fi-c.fi.fi) == (c.fi.se-b.fi.se)*(a.fi.fi-b.fi.fi))
        return (b.se >= a.se || b.se >= c.se);
    return ((b.fi.se-a.fi.se)*(b.fi.fi-c.fi.fi) > (c.fi.se-b.fi.se)*(a.fi.fi-b.fi.fi));
}

void add(ll a, ll b, int sec){
    while (con.size() >= 2 && bad(con[con.size()-2], con.back(), mp(mp(a, b), sec)))
        con.pop_back();
    con.pb(mp(mp(a, b), sec));
}

pair<ll, int> query(int x){
    if (po >= con.size())
        po = con.size()-1;

    while (po+1 < con.size() && mp(func(con[po].fi, x), con[po].se) > mp(func(con[po+1].fi, x), con[po].se))
        po++;

    return mp(func(con[po].fi, x), con[po].se);
}

int check(ll c){
    /*for (int i = 1; i <= n; i++){
        pair<ll, int> ans = mp(inf, 0);
        for (int j = 0; j < i; j++){
            ll temp = (vec[i].se-vec[j+1].fi+1)*1LL*(vec[i].se-vec[j+1].fi+1) - com[j];
            ans = min(ans, mp(dp[j].fi+temp, dp[j].se));
        }

        ans.fi += c;
        ans.se += 1;
        dp[i] = ans;

        //printf("i = %d, ans = (%lld, %d)\n", i, ans.fi, ans.se);
    }*/

    po = 0;
    con.clear();
    add(-2*(vec[1].fi-1), sq((ll)vec[1].fi-1), 0);
    for (int i = 1; i <= n; i++){
        dp[i] = query(vec[i].se);
        dp[i].fi += sq((ll)vec[i].se)+c;
        dp[i].se += 1;

        if (i != n)
            add(-2*(vec[i+1].fi-1), dp[i].fi+sq((ll)vec[i+1].fi-1)-com[i], dp[i].se);
    }

    return dp[n].se;
}

ll bs(){
    ll l = 0, r = m*1LL*m, ans;
    while (l <= r){
        ll mid = (l+r)/2;
        int cur = check(mid);

        //printf("mid = %lld, cur = %d\n", mid, cur);

        if (cur <= k)
            r = mid-1, ans = mid;
        else
            l = mid+1;
    }

    return ans;
}

ll take_photos(int N, int M, int K, vector<int> R, vector<int> C){
    n = N, m = M, k = K;

    for (int i = 0; i < n; i++){
        arr[i] = mp(R[i]+1, C[i]+1);
        if (arr[i].fi > arr[i].se)
            swap(arr[i].fi, arr[i].se);
    }

    sort(arr, arr+n);

    vec.pb(mp(1, 0));
    for (int i = 0; i < n; i++){
        while (vec.size() > 1 && vec.back().fi == arr[i].fi)
            vec.pop_back();
        if (arr[i].se > vec.back().se)
            vec.pb(arr[i]);
    }
    n = vec.size()-1;
    k = min(n, k);

    for (int i = 0; i < n; i++){
        if (vec[i].se < vec[i+1].fi)
            com[i] = 0;
        else
            com[i] = pow(vec[i].se-vec[i+1].fi+1, 2);
    }

    //for (int i = 0; i <= n; i++)
      //  printf("%d %d\n", vec[i].fi, vec[i].se);

    ll c = bs(), temp = check(c);
    //printf("c = %lld, ans = %lld\n", c, dp[n].fi - k*c);
    return dp[n].fi - k*c;
}

#ifdef TEST
int main() {
    int N, M, K;
    assert(3 == scanf("%d %d %d", &N, &M, &K));
    //printf("N = %d, M = %d, K = %d\n", N, M, K);
    vector<int> r(N), c(N);
    for (int i = 0; i < N; i++) {
        assert(2 == scanf("%d %d", &r[i], &c[i]));
    }
    long long ans = take_photos(N, M, K, r, c);


    printf("%lld\n", ans);
    return 0;
}
#endif

Compilation message

aliens.cpp: In function 'std::pair<long long int, int> query(int)':
aliens.cpp:47:12: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     if (po >= con.size())
         ~~~^~~~~~~~~~~~~
aliens.cpp:50:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     while (po+1 < con.size() && mp(func(con[po].fi, x), con[po].se) > mp(func(con[po+1].fi, x), con[po].se))
            ~~~~~^~~~~~~~~~~~
aliens.cpp: In function 'll take_photos(int, int, int, std::vector<int>, std::vector<int>)':
aliens.cpp:134:18: warning: unused variable 'temp' [-Wunused-variable]
     ll c = bs(), temp = check(c);
                  ^~~~
aliens.cpp: In function 'll bs()':
aliens.cpp:100:12: warning: 'ans' may be used uninitialized in this function [-Wmaybe-uninitialized]
     return ans;
            ^~~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Correct answer: answer = 4
2 Correct 2 ms 384 KB Correct answer: answer = 4
3 Correct 2 ms 384 KB Correct answer: answer = 4
4 Correct 3 ms 384 KB Correct answer: answer = 12
5 Correct 2 ms 384 KB Correct answer: answer = 52
6 Correct 2 ms 384 KB Correct answer: answer = 210
7 Correct 2 ms 384 KB Correct answer: answer = 88
8 Correct 2 ms 384 KB Correct answer: answer = 7696
9 Correct 2 ms 384 KB Correct answer: answer = 1
10 Correct 2 ms 384 KB Correct answer: answer = 2374
11 Correct 2 ms 384 KB Correct answer: answer = 9502
12 Correct 2 ms 384 KB Correct answer: answer = 49
13 Correct 2 ms 384 KB Correct answer: answer = 151
14 Correct 2 ms 384 KB Correct answer: answer = 7550
15 Correct 3 ms 384 KB Correct answer: answer = 7220
16 Correct 2 ms 512 KB Correct answer: answer = 7550
17 Correct 3 ms 384 KB Correct answer: answer = 10000
18 Correct 2 ms 384 KB Correct answer: answer = 10000
19 Correct 2 ms 384 KB Correct answer: answer = 624
20 Correct 2 ms 384 KB Correct answer: answer = 10000
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Correct answer: answer = 1
2 Correct 2 ms 384 KB Correct answer: answer = 4
3 Correct 2 ms 384 KB Correct answer: answer = 1
4 Correct 3 ms 384 KB Correct answer: answer = 5
5 Correct 2 ms 512 KB Correct answer: answer = 41
6 Correct 2 ms 256 KB Correct answer: answer = 71923
7 Correct 3 ms 384 KB Correct answer: answer = 77137
8 Correct 2 ms 384 KB Correct answer: answer = 764
9 Correct 3 ms 384 KB Correct answer: answer = 250000
10 Correct 2 ms 384 KB Correct answer: answer = 500
11 Correct 2 ms 256 KB Correct answer: answer = 32
12 Correct 3 ms 384 KB Correct answer: answer = 130050
13 Correct 2 ms 384 KB Correct answer: answer = 5110
14 Correct 2 ms 384 KB Correct answer: answer = 2626
15 Correct 2 ms 384 KB Correct answer: answer = 796
16 Correct 2 ms 384 KB Correct answer: answer = 7580
17 Correct 2 ms 384 KB Correct answer: answer = 1904
18 Correct 3 ms 384 KB Correct answer: answer = 996004
19 Correct 3 ms 384 KB Correct answer: answer = 38817
20 Correct 2 ms 384 KB Correct answer: answer = 4096
21 Correct 3 ms 384 KB Correct answer: answer = 1
22 Correct 2 ms 384 KB Correct answer: answer = 1
23 Correct 3 ms 384 KB Correct answer: answer = 2040
24 Correct 2 ms 384 KB Correct answer: answer = 2
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Correct answer: answer = 4
2 Correct 2 ms 384 KB Correct answer: answer = 4
3 Correct 2 ms 384 KB Correct answer: answer = 4
4 Correct 3 ms 384 KB Correct answer: answer = 12
5 Correct 2 ms 384 KB Correct answer: answer = 52
6 Correct 2 ms 384 KB Correct answer: answer = 210
7 Correct 2 ms 384 KB Correct answer: answer = 88
8 Correct 2 ms 384 KB Correct answer: answer = 7696
9 Correct 2 ms 384 KB Correct answer: answer = 1
10 Correct 2 ms 384 KB Correct answer: answer = 2374
11 Correct 2 ms 384 KB Correct answer: answer = 9502
12 Correct 2 ms 384 KB Correct answer: answer = 49
13 Correct 2 ms 384 KB Correct answer: answer = 151
14 Correct 2 ms 384 KB Correct answer: answer = 7550
15 Correct 3 ms 384 KB Correct answer: answer = 7220
16 Correct 2 ms 512 KB Correct answer: answer = 7550
17 Correct 3 ms 384 KB Correct answer: answer = 10000
18 Correct 2 ms 384 KB Correct answer: answer = 10000
19 Correct 2 ms 384 KB Correct answer: answer = 624
20 Correct 2 ms 384 KB Correct answer: answer = 10000
21 Correct 2 ms 384 KB Correct answer: answer = 1
22 Correct 2 ms 384 KB Correct answer: answer = 4
23 Correct 2 ms 384 KB Correct answer: answer = 1
24 Correct 3 ms 384 KB Correct answer: answer = 5
25 Correct 2 ms 512 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 3 ms 384 KB Correct answer: answer = 77137
28 Correct 2 ms 384 KB Correct answer: answer = 764
29 Correct 3 ms 384 KB Correct answer: answer = 250000
30 Correct 2 ms 384 KB Correct answer: answer = 500
31 Correct 2 ms 256 KB Correct answer: answer = 32
32 Correct 3 ms 384 KB Correct answer: answer = 130050
33 Correct 2 ms 384 KB Correct answer: answer = 5110
34 Correct 2 ms 384 KB Correct answer: answer = 2626
35 Correct 2 ms 384 KB Correct answer: answer = 796
36 Correct 2 ms 384 KB Correct answer: answer = 7580
37 Correct 2 ms 384 KB Correct answer: answer = 1904
38 Correct 3 ms 384 KB Correct answer: answer = 996004
39 Correct 3 ms 384 KB Correct answer: answer = 38817
40 Correct 2 ms 384 KB Correct answer: answer = 4096
41 Correct 3 ms 384 KB Correct answer: answer = 1
42 Correct 2 ms 384 KB Correct answer: answer = 1
43 Correct 3 ms 384 KB Correct answer: answer = 2040
44 Correct 2 ms 384 KB Correct answer: answer = 2
45 Correct 2 ms 384 KB Correct answer: answer = 4
46 Correct 2 ms 384 KB Correct answer: answer = 9
47 Correct 2 ms 384 KB Correct answer: answer = 9
48 Correct 2 ms 384 KB Correct answer: answer = 21
49 Correct 2 ms 384 KB Correct answer: answer = 71
50 Correct 2 ms 384 KB Correct answer: answer = 77
51 Correct 2 ms 384 KB Correct answer: answer = 400
52 Correct 2 ms 384 KB Correct answer: answer = 996004
53 Correct 2 ms 384 KB Correct answer: answer = 997310
54 Correct 2 ms 384 KB Correct answer: answer = 990781
55 Correct 2 ms 384 KB Correct answer: answer = 996545
56 Correct 3 ms 384 KB Correct answer: answer = 484
57 Correct 2 ms 384 KB Correct answer: answer = 484
58 Correct 3 ms 384 KB Correct answer: answer = 63501
59 Correct 3 ms 408 KB Correct answer: answer = 323501
60 Correct 3 ms 384 KB Correct answer: answer = 752500
61 Correct 3 ms 384 KB Correct answer: answer = 761480
62 Correct 3 ms 512 KB Correct answer: answer = 758932
63 Correct 2 ms 384 KB Correct answer: answer = 1000000
64 Correct 3 ms 384 KB Correct answer: answer = 750500
65 Correct 2 ms 384 KB Correct answer: answer = 1000000
66 Correct 3 ms 384 KB Correct answer: answer = 250000
67 Correct 2 ms 384 KB Correct answer: answer = 250000
68 Correct 2 ms 384 KB Correct answer: answer = 1000000
69 Correct 2 ms 384 KB Correct answer: answer = 994009
70 Correct 3 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 384 KB Correct answer: answer = 25454
72 Correct 2 ms 384 KB Correct answer: answer = 1504
73 Correct 2 ms 384 KB Correct answer: answer = 37486
74 Correct 2 ms 384 KB Correct answer: answer = 4284
75 Correct 3 ms 384 KB Correct answer: answer = 158008
76 Correct 2 ms 384 KB Correct answer: answer = 51860
77 Correct 2 ms 384 KB Correct answer: answer = 12985
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Correct answer: answer = 4
2 Correct 2 ms 384 KB Correct answer: answer = 4
3 Correct 2 ms 384 KB Correct answer: answer = 4
4 Correct 3 ms 384 KB Correct answer: answer = 12
5 Correct 2 ms 384 KB Correct answer: answer = 52
6 Correct 2 ms 384 KB Correct answer: answer = 210
7 Correct 2 ms 384 KB Correct answer: answer = 88
8 Correct 2 ms 384 KB Correct answer: answer = 7696
9 Correct 2 ms 384 KB Correct answer: answer = 1
10 Correct 2 ms 384 KB Correct answer: answer = 2374
11 Correct 2 ms 384 KB Correct answer: answer = 9502
12 Correct 2 ms 384 KB Correct answer: answer = 49
13 Correct 2 ms 384 KB Correct answer: answer = 151
14 Correct 2 ms 384 KB Correct answer: answer = 7550
15 Correct 3 ms 384 KB Correct answer: answer = 7220
16 Correct 2 ms 512 KB Correct answer: answer = 7550
17 Correct 3 ms 384 KB Correct answer: answer = 10000
18 Correct 2 ms 384 KB Correct answer: answer = 10000
19 Correct 2 ms 384 KB Correct answer: answer = 624
20 Correct 2 ms 384 KB Correct answer: answer = 10000
21 Correct 2 ms 384 KB Correct answer: answer = 1
22 Correct 2 ms 384 KB Correct answer: answer = 4
23 Correct 2 ms 384 KB Correct answer: answer = 1
24 Correct 3 ms 384 KB Correct answer: answer = 5
25 Correct 2 ms 512 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 3 ms 384 KB Correct answer: answer = 77137
28 Correct 2 ms 384 KB Correct answer: answer = 764
29 Correct 3 ms 384 KB Correct answer: answer = 250000
30 Correct 2 ms 384 KB Correct answer: answer = 500
31 Correct 2 ms 256 KB Correct answer: answer = 32
32 Correct 3 ms 384 KB Correct answer: answer = 130050
33 Correct 2 ms 384 KB Correct answer: answer = 5110
34 Correct 2 ms 384 KB Correct answer: answer = 2626
35 Correct 2 ms 384 KB Correct answer: answer = 796
36 Correct 2 ms 384 KB Correct answer: answer = 7580
37 Correct 2 ms 384 KB Correct answer: answer = 1904
38 Correct 3 ms 384 KB Correct answer: answer = 996004
39 Correct 3 ms 384 KB Correct answer: answer = 38817
40 Correct 2 ms 384 KB Correct answer: answer = 4096
41 Correct 3 ms 384 KB Correct answer: answer = 1
42 Correct 2 ms 384 KB Correct answer: answer = 1
43 Correct 3 ms 384 KB Correct answer: answer = 2040
44 Correct 2 ms 384 KB Correct answer: answer = 2
45 Correct 2 ms 384 KB Correct answer: answer = 4
46 Correct 2 ms 384 KB Correct answer: answer = 9
47 Correct 2 ms 384 KB Correct answer: answer = 9
48 Correct 2 ms 384 KB Correct answer: answer = 21
49 Correct 2 ms 384 KB Correct answer: answer = 71
50 Correct 2 ms 384 KB Correct answer: answer = 77
51 Correct 2 ms 384 KB Correct answer: answer = 400
52 Correct 2 ms 384 KB Correct answer: answer = 996004
53 Correct 2 ms 384 KB Correct answer: answer = 997310
54 Correct 2 ms 384 KB Correct answer: answer = 990781
55 Correct 2 ms 384 KB Correct answer: answer = 996545
56 Correct 3 ms 384 KB Correct answer: answer = 484
57 Correct 2 ms 384 KB Correct answer: answer = 484
58 Correct 3 ms 384 KB Correct answer: answer = 63501
59 Correct 3 ms 408 KB Correct answer: answer = 323501
60 Correct 3 ms 384 KB Correct answer: answer = 752500
61 Correct 3 ms 384 KB Correct answer: answer = 761480
62 Correct 3 ms 512 KB Correct answer: answer = 758932
63 Correct 2 ms 384 KB Correct answer: answer = 1000000
64 Correct 3 ms 384 KB Correct answer: answer = 750500
65 Correct 2 ms 384 KB Correct answer: answer = 1000000
66 Correct 3 ms 384 KB Correct answer: answer = 250000
67 Correct 2 ms 384 KB Correct answer: answer = 250000
68 Correct 2 ms 384 KB Correct answer: answer = 1000000
69 Correct 2 ms 384 KB Correct answer: answer = 994009
70 Correct 3 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 384 KB Correct answer: answer = 25454
72 Correct 2 ms 384 KB Correct answer: answer = 1504
73 Correct 2 ms 384 KB Correct answer: answer = 37486
74 Correct 2 ms 384 KB Correct answer: answer = 4284
75 Correct 3 ms 384 KB Correct answer: answer = 158008
76 Correct 2 ms 384 KB Correct answer: answer = 51860
77 Correct 2 ms 384 KB Correct answer: answer = 12985
78 Correct 5 ms 512 KB Correct answer: answer = 997864126212
79 Correct 5 ms 512 KB Correct answer: answer = 998608411647
80 Correct 4 ms 512 KB Correct answer: answer = 995265560477
81 Correct 8 ms 768 KB Correct answer: answer = 10125000
82 Correct 6 ms 768 KB Correct answer: answer = 2291668
83 Correct 5 ms 640 KB Correct answer: answer = 42388
84 Correct 4 ms 640 KB Correct answer: answer = 10318
85 Correct 4 ms 512 KB Correct answer: answer = 3416
86 Correct 8 ms 640 KB Correct answer: answer = 331708193881
87 Correct 9 ms 640 KB Correct answer: answer = 2861193756
88 Correct 9 ms 768 KB Correct answer: answer = 114646930
89 Correct 6 ms 768 KB Correct answer: answer = 9280921
90 Correct 8 ms 768 KB Correct answer: answer = 999984053400
91 Correct 8 ms 640 KB Correct answer: answer = 750935949134
92 Correct 3 ms 512 KB Correct answer: answer = 1000000000000
93 Correct 3 ms 512 KB Correct answer: answer = 998762383161
94 Correct 7 ms 640 KB Correct answer: answer = 23017412908
95 Correct 4 ms 512 KB Correct answer: answer = 728143410622
96 Correct 3 ms 384 KB Correct answer: answer = 2
97 Correct 7 ms 768 KB Correct answer: answer = 1824916
98 Correct 7 ms 740 KB Correct answer: answer = 10680029
99 Correct 7 ms 768 KB Correct answer: answer = 18351700
100 Correct 7 ms 640 KB Correct answer: answer = 16040026
101 Correct 5 ms 512 KB Correct answer: answer = 253968628325
102 Correct 4 ms 640 KB Correct answer: answer = 10267
103 Correct 7 ms 768 KB Correct answer: answer = 2582408
104 Correct 4 ms 512 KB Correct answer: answer = 78024964781
105 Correct 4 ms 512 KB Correct answer: answer = 9866346457
106 Correct 4 ms 512 KB Correct answer: answer = 3327720949
107 Correct 5 ms 512 KB Correct answer: answer = 86064128360
108 Correct 5 ms 640 KB Correct answer: answer = 12698259150
109 Correct 9 ms 768 KB Correct answer: answer = 1185259288
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Correct answer: answer = 4
2 Correct 2 ms 384 KB Correct answer: answer = 4
3 Correct 2 ms 384 KB Correct answer: answer = 4
4 Correct 3 ms 384 KB Correct answer: answer = 12
5 Correct 2 ms 384 KB Correct answer: answer = 52
6 Correct 2 ms 384 KB Correct answer: answer = 210
7 Correct 2 ms 384 KB Correct answer: answer = 88
8 Correct 2 ms 384 KB Correct answer: answer = 7696
9 Correct 2 ms 384 KB Correct answer: answer = 1
10 Correct 2 ms 384 KB Correct answer: answer = 2374
11 Correct 2 ms 384 KB Correct answer: answer = 9502
12 Correct 2 ms 384 KB Correct answer: answer = 49
13 Correct 2 ms 384 KB Correct answer: answer = 151
14 Correct 2 ms 384 KB Correct answer: answer = 7550
15 Correct 3 ms 384 KB Correct answer: answer = 7220
16 Correct 2 ms 512 KB Correct answer: answer = 7550
17 Correct 3 ms 384 KB Correct answer: answer = 10000
18 Correct 2 ms 384 KB Correct answer: answer = 10000
19 Correct 2 ms 384 KB Correct answer: answer = 624
20 Correct 2 ms 384 KB Correct answer: answer = 10000
21 Correct 2 ms 384 KB Correct answer: answer = 1
22 Correct 2 ms 384 KB Correct answer: answer = 4
23 Correct 2 ms 384 KB Correct answer: answer = 1
24 Correct 3 ms 384 KB Correct answer: answer = 5
25 Correct 2 ms 512 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 3 ms 384 KB Correct answer: answer = 77137
28 Correct 2 ms 384 KB Correct answer: answer = 764
29 Correct 3 ms 384 KB Correct answer: answer = 250000
30 Correct 2 ms 384 KB Correct answer: answer = 500
31 Correct 2 ms 256 KB Correct answer: answer = 32
32 Correct 3 ms 384 KB Correct answer: answer = 130050
33 Correct 2 ms 384 KB Correct answer: answer = 5110
34 Correct 2 ms 384 KB Correct answer: answer = 2626
35 Correct 2 ms 384 KB Correct answer: answer = 796
36 Correct 2 ms 384 KB Correct answer: answer = 7580
37 Correct 2 ms 384 KB Correct answer: answer = 1904
38 Correct 3 ms 384 KB Correct answer: answer = 996004
39 Correct 3 ms 384 KB Correct answer: answer = 38817
40 Correct 2 ms 384 KB Correct answer: answer = 4096
41 Correct 3 ms 384 KB Correct answer: answer = 1
42 Correct 2 ms 384 KB Correct answer: answer = 1
43 Correct 3 ms 384 KB Correct answer: answer = 2040
44 Correct 2 ms 384 KB Correct answer: answer = 2
45 Correct 2 ms 384 KB Correct answer: answer = 4
46 Correct 2 ms 384 KB Correct answer: answer = 9
47 Correct 2 ms 384 KB Correct answer: answer = 9
48 Correct 2 ms 384 KB Correct answer: answer = 21
49 Correct 2 ms 384 KB Correct answer: answer = 71
50 Correct 2 ms 384 KB Correct answer: answer = 77
51 Correct 2 ms 384 KB Correct answer: answer = 400
52 Correct 2 ms 384 KB Correct answer: answer = 996004
53 Correct 2 ms 384 KB Correct answer: answer = 997310
54 Correct 2 ms 384 KB Correct answer: answer = 990781
55 Correct 2 ms 384 KB Correct answer: answer = 996545
56 Correct 3 ms 384 KB Correct answer: answer = 484
57 Correct 2 ms 384 KB Correct answer: answer = 484
58 Correct 3 ms 384 KB Correct answer: answer = 63501
59 Correct 3 ms 408 KB Correct answer: answer = 323501
60 Correct 3 ms 384 KB Correct answer: answer = 752500
61 Correct 3 ms 384 KB Correct answer: answer = 761480
62 Correct 3 ms 512 KB Correct answer: answer = 758932
63 Correct 2 ms 384 KB Correct answer: answer = 1000000
64 Correct 3 ms 384 KB Correct answer: answer = 750500
65 Correct 2 ms 384 KB Correct answer: answer = 1000000
66 Correct 3 ms 384 KB Correct answer: answer = 250000
67 Correct 2 ms 384 KB Correct answer: answer = 250000
68 Correct 2 ms 384 KB Correct answer: answer = 1000000
69 Correct 2 ms 384 KB Correct answer: answer = 994009
70 Correct 3 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 384 KB Correct answer: answer = 25454
72 Correct 2 ms 384 KB Correct answer: answer = 1504
73 Correct 2 ms 384 KB Correct answer: answer = 37486
74 Correct 2 ms 384 KB Correct answer: answer = 4284
75 Correct 3 ms 384 KB Correct answer: answer = 158008
76 Correct 2 ms 384 KB Correct answer: answer = 51860
77 Correct 2 ms 384 KB Correct answer: answer = 12985
78 Correct 5 ms 512 KB Correct answer: answer = 997864126212
79 Correct 5 ms 512 KB Correct answer: answer = 998608411647
80 Correct 4 ms 512 KB Correct answer: answer = 995265560477
81 Correct 8 ms 768 KB Correct answer: answer = 10125000
82 Correct 6 ms 768 KB Correct answer: answer = 2291668
83 Correct 5 ms 640 KB Correct answer: answer = 42388
84 Correct 4 ms 640 KB Correct answer: answer = 10318
85 Correct 4 ms 512 KB Correct answer: answer = 3416
86 Correct 8 ms 640 KB Correct answer: answer = 331708193881
87 Correct 9 ms 640 KB Correct answer: answer = 2861193756
88 Correct 9 ms 768 KB Correct answer: answer = 114646930
89 Correct 6 ms 768 KB Correct answer: answer = 9280921
90 Correct 8 ms 768 KB Correct answer: answer = 999984053400
91 Correct 8 ms 640 KB Correct answer: answer = 750935949134
92 Correct 3 ms 512 KB Correct answer: answer = 1000000000000
93 Correct 3 ms 512 KB Correct answer: answer = 998762383161
94 Correct 7 ms 640 KB Correct answer: answer = 23017412908
95 Correct 4 ms 512 KB Correct answer: answer = 728143410622
96 Correct 3 ms 384 KB Correct answer: answer = 2
97 Correct 7 ms 768 KB Correct answer: answer = 1824916
98 Correct 7 ms 740 KB Correct answer: answer = 10680029
99 Correct 7 ms 768 KB Correct answer: answer = 18351700
100 Correct 7 ms 640 KB Correct answer: answer = 16040026
101 Correct 5 ms 512 KB Correct answer: answer = 253968628325
102 Correct 4 ms 640 KB Correct answer: answer = 10267
103 Correct 7 ms 768 KB Correct answer: answer = 2582408
104 Correct 4 ms 512 KB Correct answer: answer = 78024964781
105 Correct 4 ms 512 KB Correct answer: answer = 9866346457
106 Correct 4 ms 512 KB Correct answer: answer = 3327720949
107 Correct 5 ms 512 KB Correct answer: answer = 86064128360
108 Correct 5 ms 640 KB Correct answer: answer = 12698259150
109 Correct 9 ms 768 KB Correct answer: answer = 1185259288
110 Correct 73 ms 2168 KB Correct answer: answer = 999889968863
111 Correct 22 ms 2168 KB Correct answer: answer = 999861384931
112 Correct 20 ms 2176 KB Correct answer: answer = 999811809929
113 Correct 20 ms 2280 KB Correct answer: answer = 999869756441
114 Correct 53 ms 4848 KB Correct answer: answer = 1700000000
115 Correct 54 ms 5612 KB Correct answer: answer = 131666670
116 Correct 16 ms 1980 KB Correct answer: answer = 89478486
117 Correct 24 ms 1980 KB Correct answer: answer = 4971040
118 Correct 22 ms 1980 KB Correct answer: answer = 2711494
119 Correct 56 ms 5612 KB Correct answer: answer = 25252530
120 Correct 55 ms 5584 KB Correct answer: answer = 62500000
121 Correct 77 ms 3960 KB Correct answer: answer = 333175097780
122 Correct 88 ms 3952 KB Correct answer: answer = 33121180179
123 Correct 81 ms 3824 KB Correct answer: answer = 9802314015
124 Correct 59 ms 5612 KB Correct answer: answer = 32567551
125 Correct 67 ms 5616 KB Correct answer: answer = 997525000000
126 Correct 69 ms 3696 KB Correct answer: answer = 752723538884
127 Correct 14 ms 2176 KB Correct answer: answer = 1000000000000
128 Correct 19 ms 2176 KB Correct answer: answer = 999978000121
129 Correct 21 ms 2304 KB Correct answer: answer = 745986144735
130 Correct 13 ms 1664 KB Correct answer: answer = 2
131 Correct 63 ms 5612 KB Correct answer: answer = 277966670
132 Correct 64 ms 4820 KB Correct answer: answer = 2500900082
133 Correct 26 ms 2424 KB Correct answer: answer = 301248349636
134 Correct 32 ms 2536 KB Correct answer: answer = 14118891
135 Correct 18 ms 2176 KB Correct answer: answer = 14384977265
136 Correct 22 ms 2176 KB Correct answer: answer = 3681368330
137 Correct 22 ms 2304 KB Correct answer: answer = 2720316816
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Correct answer: answer = 4
2 Correct 2 ms 384 KB Correct answer: answer = 4
3 Correct 2 ms 384 KB Correct answer: answer = 4
4 Correct 3 ms 384 KB Correct answer: answer = 12
5 Correct 2 ms 384 KB Correct answer: answer = 52
6 Correct 2 ms 384 KB Correct answer: answer = 210
7 Correct 2 ms 384 KB Correct answer: answer = 88
8 Correct 2 ms 384 KB Correct answer: answer = 7696
9 Correct 2 ms 384 KB Correct answer: answer = 1
10 Correct 2 ms 384 KB Correct answer: answer = 2374
11 Correct 2 ms 384 KB Correct answer: answer = 9502
12 Correct 2 ms 384 KB Correct answer: answer = 49
13 Correct 2 ms 384 KB Correct answer: answer = 151
14 Correct 2 ms 384 KB Correct answer: answer = 7550
15 Correct 3 ms 384 KB Correct answer: answer = 7220
16 Correct 2 ms 512 KB Correct answer: answer = 7550
17 Correct 3 ms 384 KB Correct answer: answer = 10000
18 Correct 2 ms 384 KB Correct answer: answer = 10000
19 Correct 2 ms 384 KB Correct answer: answer = 624
20 Correct 2 ms 384 KB Correct answer: answer = 10000
21 Correct 2 ms 384 KB Correct answer: answer = 1
22 Correct 2 ms 384 KB Correct answer: answer = 4
23 Correct 2 ms 384 KB Correct answer: answer = 1
24 Correct 3 ms 384 KB Correct answer: answer = 5
25 Correct 2 ms 512 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 3 ms 384 KB Correct answer: answer = 77137
28 Correct 2 ms 384 KB Correct answer: answer = 764
29 Correct 3 ms 384 KB Correct answer: answer = 250000
30 Correct 2 ms 384 KB Correct answer: answer = 500
31 Correct 2 ms 256 KB Correct answer: answer = 32
32 Correct 3 ms 384 KB Correct answer: answer = 130050
33 Correct 2 ms 384 KB Correct answer: answer = 5110
34 Correct 2 ms 384 KB Correct answer: answer = 2626
35 Correct 2 ms 384 KB Correct answer: answer = 796
36 Correct 2 ms 384 KB Correct answer: answer = 7580
37 Correct 2 ms 384 KB Correct answer: answer = 1904
38 Correct 3 ms 384 KB Correct answer: answer = 996004
39 Correct 3 ms 384 KB Correct answer: answer = 38817
40 Correct 2 ms 384 KB Correct answer: answer = 4096
41 Correct 3 ms 384 KB Correct answer: answer = 1
42 Correct 2 ms 384 KB Correct answer: answer = 1
43 Correct 3 ms 384 KB Correct answer: answer = 2040
44 Correct 2 ms 384 KB Correct answer: answer = 2
45 Correct 2 ms 384 KB Correct answer: answer = 4
46 Correct 2 ms 384 KB Correct answer: answer = 9
47 Correct 2 ms 384 KB Correct answer: answer = 9
48 Correct 2 ms 384 KB Correct answer: answer = 21
49 Correct 2 ms 384 KB Correct answer: answer = 71
50 Correct 2 ms 384 KB Correct answer: answer = 77
51 Correct 2 ms 384 KB Correct answer: answer = 400
52 Correct 2 ms 384 KB Correct answer: answer = 996004
53 Correct 2 ms 384 KB Correct answer: answer = 997310
54 Correct 2 ms 384 KB Correct answer: answer = 990781
55 Correct 2 ms 384 KB Correct answer: answer = 996545
56 Correct 3 ms 384 KB Correct answer: answer = 484
57 Correct 2 ms 384 KB Correct answer: answer = 484
58 Correct 3 ms 384 KB Correct answer: answer = 63501
59 Correct 3 ms 408 KB Correct answer: answer = 323501
60 Correct 3 ms 384 KB Correct answer: answer = 752500
61 Correct 3 ms 384 KB Correct answer: answer = 761480
62 Correct 3 ms 512 KB Correct answer: answer = 758932
63 Correct 2 ms 384 KB Correct answer: answer = 1000000
64 Correct 3 ms 384 KB Correct answer: answer = 750500
65 Correct 2 ms 384 KB Correct answer: answer = 1000000
66 Correct 3 ms 384 KB Correct answer: answer = 250000
67 Correct 2 ms 384 KB Correct answer: answer = 250000
68 Correct 2 ms 384 KB Correct answer: answer = 1000000
69 Correct 2 ms 384 KB Correct answer: answer = 994009
70 Correct 3 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 384 KB Correct answer: answer = 25454
72 Correct 2 ms 384 KB Correct answer: answer = 1504
73 Correct 2 ms 384 KB Correct answer: answer = 37486
74 Correct 2 ms 384 KB Correct answer: answer = 4284
75 Correct 3 ms 384 KB Correct answer: answer = 158008
76 Correct 2 ms 384 KB Correct answer: answer = 51860
77 Correct 2 ms 384 KB Correct answer: answer = 12985
78 Correct 5 ms 512 KB Correct answer: answer = 997864126212
79 Correct 5 ms 512 KB Correct answer: answer = 998608411647
80 Correct 4 ms 512 KB Correct answer: answer = 995265560477
81 Correct 8 ms 768 KB Correct answer: answer = 10125000
82 Correct 6 ms 768 KB Correct answer: answer = 2291668
83 Correct 5 ms 640 KB Correct answer: answer = 42388
84 Correct 4 ms 640 KB Correct answer: answer = 10318
85 Correct 4 ms 512 KB Correct answer: answer = 3416
86 Correct 8 ms 640 KB Correct answer: answer = 331708193881
87 Correct 9 ms 640 KB Correct answer: answer = 2861193756
88 Correct 9 ms 768 KB Correct answer: answer = 114646930
89 Correct 6 ms 768 KB Correct answer: answer = 9280921
90 Correct 8 ms 768 KB Correct answer: answer = 999984053400
91 Correct 8 ms 640 KB Correct answer: answer = 750935949134
92 Correct 3 ms 512 KB Correct answer: answer = 1000000000000
93 Correct 3 ms 512 KB Correct answer: answer = 998762383161
94 Correct 7 ms 640 KB Correct answer: answer = 23017412908
95 Correct 4 ms 512 KB Correct answer: answer = 728143410622
96 Correct 3 ms 384 KB Correct answer: answer = 2
97 Correct 7 ms 768 KB Correct answer: answer = 1824916
98 Correct 7 ms 740 KB Correct answer: answer = 10680029
99 Correct 7 ms 768 KB Correct answer: answer = 18351700
100 Correct 7 ms 640 KB Correct answer: answer = 16040026
101 Correct 5 ms 512 KB Correct answer: answer = 253968628325
102 Correct 4 ms 640 KB Correct answer: answer = 10267
103 Correct 7 ms 768 KB Correct answer: answer = 2582408
104 Correct 4 ms 512 KB Correct answer: answer = 78024964781
105 Correct 4 ms 512 KB Correct answer: answer = 9866346457
106 Correct 4 ms 512 KB Correct answer: answer = 3327720949
107 Correct 5 ms 512 KB Correct answer: answer = 86064128360
108 Correct 5 ms 640 KB Correct answer: answer = 12698259150
109 Correct 9 ms 768 KB Correct answer: answer = 1185259288
110 Correct 73 ms 2168 KB Correct answer: answer = 999889968863
111 Correct 22 ms 2168 KB Correct answer: answer = 999861384931
112 Correct 20 ms 2176 KB Correct answer: answer = 999811809929
113 Correct 20 ms 2280 KB Correct answer: answer = 999869756441
114 Correct 53 ms 4848 KB Correct answer: answer = 1700000000
115 Correct 54 ms 5612 KB Correct answer: answer = 131666670
116 Correct 16 ms 1980 KB Correct answer: answer = 89478486
117 Correct 24 ms 1980 KB Correct answer: answer = 4971040
118 Correct 22 ms 1980 KB Correct answer: answer = 2711494
119 Correct 56 ms 5612 KB Correct answer: answer = 25252530
120 Correct 55 ms 5584 KB Correct answer: answer = 62500000
121 Correct 77 ms 3960 KB Correct answer: answer = 333175097780
122 Correct 88 ms 3952 KB Correct answer: answer = 33121180179
123 Correct 81 ms 3824 KB Correct answer: answer = 9802314015
124 Correct 59 ms 5612 KB Correct answer: answer = 32567551
125 Correct 67 ms 5616 KB Correct answer: answer = 997525000000
126 Correct 69 ms 3696 KB Correct answer: answer = 752723538884
127 Correct 14 ms 2176 KB Correct answer: answer = 1000000000000
128 Correct 19 ms 2176 KB Correct answer: answer = 999978000121
129 Correct 21 ms 2304 KB Correct answer: answer = 745986144735
130 Correct 13 ms 1664 KB Correct answer: answer = 2
131 Correct 63 ms 5612 KB Correct answer: answer = 277966670
132 Correct 64 ms 4820 KB Correct answer: answer = 2500900082
133 Correct 26 ms 2424 KB Correct answer: answer = 301248349636
134 Correct 32 ms 2536 KB Correct answer: answer = 14118891
135 Correct 18 ms 2176 KB Correct answer: answer = 14384977265
136 Correct 22 ms 2176 KB Correct answer: answer = 3681368330
137 Correct 22 ms 2304 KB Correct answer: answer = 2720316816
138 Correct 37 ms 4020 KB Correct answer: answer = 999976000144
139 Correct 44 ms 4216 KB Correct answer: answer = 999856102410
140 Correct 60 ms 4088 KB Correct answer: answer = 999958401531
141 Correct 41 ms 4088 KB Correct answer: answer = 999769649944
142 Correct 39 ms 4096 KB Correct answer: answer = 999874525918
143 Correct 115 ms 9116 KB Correct answer: answer = 6050000000
144 Correct 131 ms 10828 KB Correct answer: answer = 1112500000
145 Correct 72 ms 7020 KB Correct answer: answer = 4294967296
146 Correct 86 ms 7020 KB Correct answer: answer = 87652406
147 Correct 79 ms 7020 KB Correct answer: answer = 6297664
148 Correct 93 ms 7192 KB Correct answer: answer = 196612
149 Correct 155 ms 10984 KB Correct answer: answer = 15015100
150 Correct 117 ms 10856 KB Correct answer: answer = 25000000
151 Correct 149 ms 7148 KB Correct answer: answer = 333230209550
152 Correct 183 ms 7464 KB Correct answer: answer = 917123769
153 Correct 155 ms 10912 KB Correct answer: answer = 95162
154 Correct 118 ms 10900 KB Correct answer: answer = 382616191
155 Correct 130 ms 10988 KB Correct answer: answer = 990033333400
156 Correct 131 ms 10984 KB Correct answer: answer = 990000100000
157 Correct 142 ms 9032 KB Correct answer: answer = 749998188180
158 Correct 27 ms 3968 KB Correct answer: answer = 1000000000000
159 Correct 41 ms 3976 KB Correct answer: answer = 999988000036
160 Correct 38 ms 4088 KB Correct answer: answer = 744929274393
161 Correct 21 ms 3072 KB Correct answer: answer = 2
162 Correct 138 ms 10820 KB Correct answer: answer = 1300024
163 Correct 118 ms 9324 KB Correct answer: answer = 5000700010
164 Correct 57 ms 4472 KB Correct answer: answer = 354997100800
165 Correct 69 ms 5564 KB Correct answer: answer = 257000
166 Correct 63 ms 5620 KB Correct answer: answer = 3765323
167 Correct 88 ms 5612 KB Correct answer: answer = 1525903
168 Correct 43 ms 4088 KB Correct answer: answer = 67618137730
169 Correct 44 ms 4096 KB Correct answer: answer = 12656680171
170 Correct 46 ms 4220 KB Correct answer: answer = 579831736
171 Correct 80 ms 5488 KB Correct answer: answer = 23605611
172 Correct 56 ms 4344 KB Correct answer: answer = 7052481200
173 Correct 55 ms 4920 KB Correct answer: answer = 1314039500
174 Correct 62 ms 5656 KB Correct answer: answer = 302484000
175 Correct 105 ms 7132 KB Correct answer: answer = 52348480