Submission #739518

# Submission time Handle Problem Language Result Execution time Memory
739518 2023-05-10T14:58:55 Z boris_mihov Aliens (IOI16_aliens) C++17
100 / 100
135 ms 6832 KB
#include "aliens.h"
#include <algorithm>
#include <iostream>
#include <numeric>
#include <cassert>
#include <vector>
#include <queue>

typedef long long llong;
const int MAXN = 100000 + 10;
const int INF  = 1e9;

int n, m, k;
struct Interval
{
    int l, r;
    inline friend bool operator < (const Interval &a, const Interval &b)
    {
        return a.l < b.l || (a.l == b.l && a.r < b.r);
    }
};

struct CHT
{
    struct Line
    {
        llong x, y;
        int cntPenalties;
        int to;

        std::pair <llong,int> getValue(int at)
        {
            return {x * at + y, cntPenalties};
        }
    };

    llong intersect(Line a, Line b)
    {
        if (a.y >= b.y)
        {
            return INF;
        }

        return (b.y - a.y) / (a.x - b.x) - ((b.y - a.y) % (a.x - b.x) == 0 && b.cntPenalties < a.cntPenalties);
    }

    std::deque <Line> dq;
    void reset()
    {
        dq.clear();
    }

    void push(Line toPush)
    {
        while (dq.size() && dq.front().getValue(dq.front().to) > toPush.getValue(dq.front().to))
        {
            dq.pop_front();
        }

        if (dq.empty())
        {
            dq.push_front(toPush);
        } else
        {
            llong where = intersect(toPush, dq.front());
            if (where <= m) dq.push_front({toPush.x, toPush.y, toPush.cntPenalties, where});
        }
    }

    std::pair <llong,int> find(int at)
    {
        while (dq.size() >= 2 && dq[dq.size() - 2].to >= at)
        {
            dq.pop_back();
        }

        assert(dq.size());
        return dq.back().getValue(at);
    }
};

CHT cht;
std::vector <Interval> v;
std::pair <llong,int> dp[MAXN];

std::pair <llong,int> check(llong penalty)
{
    cht.reset();
    cht.push({-2 * v.back().r, 1LL * v.back().r * v.back().r + penalty, 1, m});
    
    for (int idx = v.size() - 1 ; idx >= 0 ; --idx)
    {
        dp[idx] = cht.find(v[idx].l);
        dp[idx].first += 1LL * v[idx].l * v[idx].l;

        if (idx != 0)
        {
            llong toRemove = std::max(0, v[idx - 1].r - v[idx].l); toRemove *= toRemove;
            cht.push({-2 * v[idx - 1].r, 1LL * v[idx - 1].r * v[idx - 1].r + dp[idx].first - toRemove + penalty, dp[idx].second + 1, m});
        }
    }

    return dp[0];
}

llong take_photos(int N, int M, int K, std::vector <int> x, std::vector <int> y) 
{
    n = N; m = M; k = K;
    std::vector <Interval> sorted;
    for (int i = 0 ; i < n ; ++i)
    {
        sorted.push_back({std::min(x[i], y[i]), std::max(x[i], y[i]) + 1});
    }

    std::sort(sorted.begin(), sorted.end());
    for (const Interval &curr : sorted)
    {
        while (v.size() && v.back().l == curr.l && curr.r >= v.back().r)
        {
            v.pop_back();
        }

        if (v.empty() || v.back().r < curr.r)
        {
            v.push_back(curr);
        }
    }

    k = std::min(k, (int)v.size());
    llong l = -1, r = 1LL * m * m, mid;
    while (l < r - 1)
    {
        mid = (l + r) / 2;
        auto res = check(mid);
        if (res.second == k)
        {
            return res.first - k * mid;
        }

        if (res.second > k) l = mid;
        else r = mid;
    }
    
    auto resL = check(l);
    auto resR = check(r);    
    llong fL = resL.first - resL.second * l;
    llong fR = resR.first - resR.second * r;
    return fL + (fR - fL) * (resL.second - k) / (resL.second - resR.second);
}

Compilation message

aliens.cpp: In member function 'void CHT::push(CHT::Line)':
aliens.cpp:66:85: warning: narrowing conversion of 'where' from 'llong' {aka 'long long int'} to 'int' [-Wnarrowing]
   66 |             if (where <= m) dq.push_front({toPush.x, toPush.y, toPush.cntPenalties, where});
      |                                                                                     ^~~~~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Correct answer: answer = 4
2 Correct 1 ms 212 KB Correct answer: answer = 4
3 Correct 1 ms 212 KB Correct answer: answer = 4
4 Correct 1 ms 212 KB Correct answer: answer = 12
5 Correct 0 ms 212 KB Correct answer: answer = 52
6 Correct 1 ms 212 KB Correct answer: answer = 210
7 Correct 0 ms 212 KB Correct answer: answer = 88
8 Correct 0 ms 212 KB Correct answer: answer = 7696
9 Correct 1 ms 212 KB Correct answer: answer = 1
10 Correct 1 ms 212 KB Correct answer: answer = 2374
11 Correct 0 ms 212 KB Correct answer: answer = 9502
12 Correct 0 ms 212 KB Correct answer: answer = 49
13 Correct 1 ms 212 KB Correct answer: answer = 151
14 Correct 1 ms 212 KB Correct answer: answer = 7550
15 Correct 0 ms 212 KB Correct answer: answer = 7220
16 Correct 1 ms 212 KB Correct answer: answer = 7550
17 Correct 0 ms 212 KB Correct answer: answer = 10000
18 Correct 0 ms 212 KB Correct answer: answer = 10000
19 Correct 0 ms 212 KB Correct answer: answer = 624
20 Correct 0 ms 212 KB Correct answer: answer = 10000
# Verdict Execution time Memory Grader output
1 Correct 3 ms 212 KB Correct answer: answer = 1
2 Correct 1 ms 212 KB Correct answer: answer = 4
3 Correct 1 ms 212 KB Correct answer: answer = 1
4 Correct 1 ms 212 KB Correct answer: answer = 5
5 Correct 0 ms 212 KB Correct answer: answer = 41
6 Correct 1 ms 212 KB Correct answer: answer = 71923
7 Correct 1 ms 212 KB Correct answer: answer = 77137
8 Correct 1 ms 312 KB Correct answer: answer = 764
9 Correct 1 ms 212 KB Correct answer: answer = 250000
10 Correct 1 ms 212 KB Correct answer: answer = 500
11 Correct 1 ms 212 KB Correct answer: answer = 32
12 Correct 1 ms 212 KB Correct answer: answer = 130050
13 Correct 1 ms 212 KB Correct answer: answer = 5110
14 Correct 1 ms 212 KB Correct answer: answer = 2626
15 Correct 1 ms 212 KB Correct answer: answer = 796
16 Correct 1 ms 340 KB Correct answer: answer = 7580
17 Correct 1 ms 340 KB Correct answer: answer = 1904
18 Correct 1 ms 340 KB Correct answer: answer = 996004
19 Correct 1 ms 308 KB Correct answer: answer = 38817
20 Correct 1 ms 212 KB Correct answer: answer = 4096
21 Correct 1 ms 212 KB Correct answer: answer = 1
22 Correct 1 ms 212 KB Correct answer: answer = 1
23 Correct 1 ms 304 KB Correct answer: answer = 2040
24 Correct 0 ms 212 KB Correct answer: answer = 2
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Correct answer: answer = 4
2 Correct 1 ms 212 KB Correct answer: answer = 4
3 Correct 1 ms 212 KB Correct answer: answer = 4
4 Correct 1 ms 212 KB Correct answer: answer = 12
5 Correct 0 ms 212 KB Correct answer: answer = 52
6 Correct 1 ms 212 KB Correct answer: answer = 210
7 Correct 0 ms 212 KB Correct answer: answer = 88
8 Correct 0 ms 212 KB Correct answer: answer = 7696
9 Correct 1 ms 212 KB Correct answer: answer = 1
10 Correct 1 ms 212 KB Correct answer: answer = 2374
11 Correct 0 ms 212 KB Correct answer: answer = 9502
12 Correct 0 ms 212 KB Correct answer: answer = 49
13 Correct 1 ms 212 KB Correct answer: answer = 151
14 Correct 1 ms 212 KB Correct answer: answer = 7550
15 Correct 0 ms 212 KB Correct answer: answer = 7220
16 Correct 1 ms 212 KB Correct answer: answer = 7550
17 Correct 0 ms 212 KB Correct answer: answer = 10000
18 Correct 0 ms 212 KB Correct answer: answer = 10000
19 Correct 0 ms 212 KB Correct answer: answer = 624
20 Correct 0 ms 212 KB Correct answer: answer = 10000
21 Correct 3 ms 212 KB Correct answer: answer = 1
22 Correct 1 ms 212 KB Correct answer: answer = 4
23 Correct 1 ms 212 KB Correct answer: answer = 1
24 Correct 1 ms 212 KB Correct answer: answer = 5
25 Correct 0 ms 212 KB Correct answer: answer = 41
26 Correct 1 ms 212 KB Correct answer: answer = 71923
27 Correct 1 ms 212 KB Correct answer: answer = 77137
28 Correct 1 ms 312 KB Correct answer: answer = 764
29 Correct 1 ms 212 KB Correct answer: answer = 250000
30 Correct 1 ms 212 KB Correct answer: answer = 500
31 Correct 1 ms 212 KB Correct answer: answer = 32
32 Correct 1 ms 212 KB Correct answer: answer = 130050
33 Correct 1 ms 212 KB Correct answer: answer = 5110
34 Correct 1 ms 212 KB Correct answer: answer = 2626
35 Correct 1 ms 212 KB Correct answer: answer = 796
36 Correct 1 ms 340 KB Correct answer: answer = 7580
37 Correct 1 ms 340 KB Correct answer: answer = 1904
38 Correct 1 ms 340 KB Correct answer: answer = 996004
39 Correct 1 ms 308 KB Correct answer: answer = 38817
40 Correct 1 ms 212 KB Correct answer: answer = 4096
41 Correct 1 ms 212 KB Correct answer: answer = 1
42 Correct 1 ms 212 KB Correct answer: answer = 1
43 Correct 1 ms 304 KB Correct answer: answer = 2040
44 Correct 0 ms 212 KB Correct answer: answer = 2
45 Correct 1 ms 212 KB Correct answer: answer = 4
46 Correct 0 ms 212 KB Correct answer: answer = 9
47 Correct 1 ms 212 KB Correct answer: answer = 9
48 Correct 1 ms 212 KB Correct answer: answer = 21
49 Correct 0 ms 304 KB Correct answer: answer = 71
50 Correct 1 ms 212 KB Correct answer: answer = 77
51 Correct 1 ms 212 KB Correct answer: answer = 400
52 Correct 1 ms 212 KB Correct answer: answer = 996004
53 Correct 1 ms 212 KB Correct answer: answer = 997310
54 Correct 1 ms 212 KB Correct answer: answer = 990781
55 Correct 1 ms 304 KB Correct answer: answer = 996545
56 Correct 1 ms 212 KB Correct answer: answer = 484
57 Correct 1 ms 308 KB Correct answer: answer = 484
58 Correct 1 ms 340 KB Correct answer: answer = 63501
59 Correct 1 ms 212 KB Correct answer: answer = 323501
60 Correct 2 ms 212 KB Correct answer: answer = 752500
61 Correct 1 ms 312 KB Correct answer: answer = 761480
62 Correct 1 ms 212 KB Correct answer: answer = 758932
63 Correct 1 ms 212 KB Correct answer: answer = 1000000
64 Correct 1 ms 212 KB Correct answer: answer = 750500
65 Correct 1 ms 308 KB Correct answer: answer = 1000000
66 Correct 1 ms 212 KB Correct answer: answer = 250000
67 Correct 1 ms 212 KB Correct answer: answer = 250000
68 Correct 1 ms 212 KB Correct answer: answer = 1000000
69 Correct 1 ms 212 KB Correct answer: answer = 994009
70 Correct 1 ms 312 KB Correct answer: answer = 59315
71 Correct 1 ms 212 KB Correct answer: answer = 25454
72 Correct 1 ms 212 KB Correct answer: answer = 1504
73 Correct 1 ms 212 KB Correct answer: answer = 37486
74 Correct 1 ms 212 KB Correct answer: answer = 4284
75 Correct 1 ms 212 KB Correct answer: answer = 158008
76 Correct 1 ms 212 KB Correct answer: answer = 51860
77 Correct 1 ms 212 KB Correct answer: answer = 12985
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Correct answer: answer = 4
2 Correct 1 ms 212 KB Correct answer: answer = 4
3 Correct 1 ms 212 KB Correct answer: answer = 4
4 Correct 1 ms 212 KB Correct answer: answer = 12
5 Correct 0 ms 212 KB Correct answer: answer = 52
6 Correct 1 ms 212 KB Correct answer: answer = 210
7 Correct 0 ms 212 KB Correct answer: answer = 88
8 Correct 0 ms 212 KB Correct answer: answer = 7696
9 Correct 1 ms 212 KB Correct answer: answer = 1
10 Correct 1 ms 212 KB Correct answer: answer = 2374
11 Correct 0 ms 212 KB Correct answer: answer = 9502
12 Correct 0 ms 212 KB Correct answer: answer = 49
13 Correct 1 ms 212 KB Correct answer: answer = 151
14 Correct 1 ms 212 KB Correct answer: answer = 7550
15 Correct 0 ms 212 KB Correct answer: answer = 7220
16 Correct 1 ms 212 KB Correct answer: answer = 7550
17 Correct 0 ms 212 KB Correct answer: answer = 10000
18 Correct 0 ms 212 KB Correct answer: answer = 10000
19 Correct 0 ms 212 KB Correct answer: answer = 624
20 Correct 0 ms 212 KB Correct answer: answer = 10000
21 Correct 3 ms 212 KB Correct answer: answer = 1
22 Correct 1 ms 212 KB Correct answer: answer = 4
23 Correct 1 ms 212 KB Correct answer: answer = 1
24 Correct 1 ms 212 KB Correct answer: answer = 5
25 Correct 0 ms 212 KB Correct answer: answer = 41
26 Correct 1 ms 212 KB Correct answer: answer = 71923
27 Correct 1 ms 212 KB Correct answer: answer = 77137
28 Correct 1 ms 312 KB Correct answer: answer = 764
29 Correct 1 ms 212 KB Correct answer: answer = 250000
30 Correct 1 ms 212 KB Correct answer: answer = 500
31 Correct 1 ms 212 KB Correct answer: answer = 32
32 Correct 1 ms 212 KB Correct answer: answer = 130050
33 Correct 1 ms 212 KB Correct answer: answer = 5110
34 Correct 1 ms 212 KB Correct answer: answer = 2626
35 Correct 1 ms 212 KB Correct answer: answer = 796
36 Correct 1 ms 340 KB Correct answer: answer = 7580
37 Correct 1 ms 340 KB Correct answer: answer = 1904
38 Correct 1 ms 340 KB Correct answer: answer = 996004
39 Correct 1 ms 308 KB Correct answer: answer = 38817
40 Correct 1 ms 212 KB Correct answer: answer = 4096
41 Correct 1 ms 212 KB Correct answer: answer = 1
42 Correct 1 ms 212 KB Correct answer: answer = 1
43 Correct 1 ms 304 KB Correct answer: answer = 2040
44 Correct 0 ms 212 KB Correct answer: answer = 2
45 Correct 1 ms 212 KB Correct answer: answer = 4
46 Correct 0 ms 212 KB Correct answer: answer = 9
47 Correct 1 ms 212 KB Correct answer: answer = 9
48 Correct 1 ms 212 KB Correct answer: answer = 21
49 Correct 0 ms 304 KB Correct answer: answer = 71
50 Correct 1 ms 212 KB Correct answer: answer = 77
51 Correct 1 ms 212 KB Correct answer: answer = 400
52 Correct 1 ms 212 KB Correct answer: answer = 996004
53 Correct 1 ms 212 KB Correct answer: answer = 997310
54 Correct 1 ms 212 KB Correct answer: answer = 990781
55 Correct 1 ms 304 KB Correct answer: answer = 996545
56 Correct 1 ms 212 KB Correct answer: answer = 484
57 Correct 1 ms 308 KB Correct answer: answer = 484
58 Correct 1 ms 340 KB Correct answer: answer = 63501
59 Correct 1 ms 212 KB Correct answer: answer = 323501
60 Correct 2 ms 212 KB Correct answer: answer = 752500
61 Correct 1 ms 312 KB Correct answer: answer = 761480
62 Correct 1 ms 212 KB Correct answer: answer = 758932
63 Correct 1 ms 212 KB Correct answer: answer = 1000000
64 Correct 1 ms 212 KB Correct answer: answer = 750500
65 Correct 1 ms 308 KB Correct answer: answer = 1000000
66 Correct 1 ms 212 KB Correct answer: answer = 250000
67 Correct 1 ms 212 KB Correct answer: answer = 250000
68 Correct 1 ms 212 KB Correct answer: answer = 1000000
69 Correct 1 ms 212 KB Correct answer: answer = 994009
70 Correct 1 ms 312 KB Correct answer: answer = 59315
71 Correct 1 ms 212 KB Correct answer: answer = 25454
72 Correct 1 ms 212 KB Correct answer: answer = 1504
73 Correct 1 ms 212 KB Correct answer: answer = 37486
74 Correct 1 ms 212 KB Correct answer: answer = 4284
75 Correct 1 ms 212 KB Correct answer: answer = 158008
76 Correct 1 ms 212 KB Correct answer: answer = 51860
77 Correct 1 ms 212 KB Correct answer: answer = 12985
78 Correct 2 ms 468 KB Correct answer: answer = 997864126212
79 Correct 2 ms 468 KB Correct answer: answer = 998608411647
80 Correct 2 ms 468 KB Correct answer: answer = 995265560477
81 Correct 2 ms 468 KB Correct answer: answer = 10125000
82 Correct 2 ms 468 KB Correct answer: answer = 2291668
83 Correct 2 ms 340 KB Correct answer: answer = 42388
84 Correct 2 ms 340 KB Correct answer: answer = 10318
85 Correct 2 ms 340 KB Correct answer: answer = 3416
86 Correct 2 ms 468 KB Correct answer: answer = 331708193881
87 Correct 4 ms 576 KB Correct answer: answer = 2861193756
88 Correct 5 ms 468 KB Correct answer: answer = 114646930
89 Correct 3 ms 468 KB Correct answer: answer = 9280921
90 Correct 7 ms 468 KB Correct answer: answer = 999984053400
91 Correct 5 ms 576 KB Correct answer: answer = 750935949134
92 Correct 1 ms 468 KB Correct answer: answer = 1000000000000
93 Correct 2 ms 468 KB Correct answer: answer = 998762383161
94 Correct 3 ms 572 KB Correct answer: answer = 23017412908
95 Correct 1 ms 448 KB Correct answer: answer = 728143410622
96 Correct 2 ms 340 KB Correct answer: answer = 2
97 Correct 3 ms 468 KB Correct answer: answer = 1824916
98 Correct 5 ms 448 KB Correct answer: answer = 10680029
99 Correct 3 ms 468 KB Correct answer: answer = 18351700
100 Correct 2 ms 452 KB Correct answer: answer = 16040026
101 Correct 2 ms 444 KB Correct answer: answer = 253968628325
102 Correct 2 ms 340 KB Correct answer: answer = 10267
103 Correct 6 ms 468 KB Correct answer: answer = 2582408
104 Correct 2 ms 396 KB Correct answer: answer = 78024964781
105 Correct 2 ms 468 KB Correct answer: answer = 9866346457
106 Correct 2 ms 468 KB Correct answer: answer = 3327720949
107 Correct 2 ms 452 KB Correct answer: answer = 86064128360
108 Correct 2 ms 468 KB Correct answer: answer = 12698259150
109 Correct 5 ms 560 KB Correct answer: answer = 1185259288
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Correct answer: answer = 4
2 Correct 1 ms 212 KB Correct answer: answer = 4
3 Correct 1 ms 212 KB Correct answer: answer = 4
4 Correct 1 ms 212 KB Correct answer: answer = 12
5 Correct 0 ms 212 KB Correct answer: answer = 52
6 Correct 1 ms 212 KB Correct answer: answer = 210
7 Correct 0 ms 212 KB Correct answer: answer = 88
8 Correct 0 ms 212 KB Correct answer: answer = 7696
9 Correct 1 ms 212 KB Correct answer: answer = 1
10 Correct 1 ms 212 KB Correct answer: answer = 2374
11 Correct 0 ms 212 KB Correct answer: answer = 9502
12 Correct 0 ms 212 KB Correct answer: answer = 49
13 Correct 1 ms 212 KB Correct answer: answer = 151
14 Correct 1 ms 212 KB Correct answer: answer = 7550
15 Correct 0 ms 212 KB Correct answer: answer = 7220
16 Correct 1 ms 212 KB Correct answer: answer = 7550
17 Correct 0 ms 212 KB Correct answer: answer = 10000
18 Correct 0 ms 212 KB Correct answer: answer = 10000
19 Correct 0 ms 212 KB Correct answer: answer = 624
20 Correct 0 ms 212 KB Correct answer: answer = 10000
21 Correct 3 ms 212 KB Correct answer: answer = 1
22 Correct 1 ms 212 KB Correct answer: answer = 4
23 Correct 1 ms 212 KB Correct answer: answer = 1
24 Correct 1 ms 212 KB Correct answer: answer = 5
25 Correct 0 ms 212 KB Correct answer: answer = 41
26 Correct 1 ms 212 KB Correct answer: answer = 71923
27 Correct 1 ms 212 KB Correct answer: answer = 77137
28 Correct 1 ms 312 KB Correct answer: answer = 764
29 Correct 1 ms 212 KB Correct answer: answer = 250000
30 Correct 1 ms 212 KB Correct answer: answer = 500
31 Correct 1 ms 212 KB Correct answer: answer = 32
32 Correct 1 ms 212 KB Correct answer: answer = 130050
33 Correct 1 ms 212 KB Correct answer: answer = 5110
34 Correct 1 ms 212 KB Correct answer: answer = 2626
35 Correct 1 ms 212 KB Correct answer: answer = 796
36 Correct 1 ms 340 KB Correct answer: answer = 7580
37 Correct 1 ms 340 KB Correct answer: answer = 1904
38 Correct 1 ms 340 KB Correct answer: answer = 996004
39 Correct 1 ms 308 KB Correct answer: answer = 38817
40 Correct 1 ms 212 KB Correct answer: answer = 4096
41 Correct 1 ms 212 KB Correct answer: answer = 1
42 Correct 1 ms 212 KB Correct answer: answer = 1
43 Correct 1 ms 304 KB Correct answer: answer = 2040
44 Correct 0 ms 212 KB Correct answer: answer = 2
45 Correct 1 ms 212 KB Correct answer: answer = 4
46 Correct 0 ms 212 KB Correct answer: answer = 9
47 Correct 1 ms 212 KB Correct answer: answer = 9
48 Correct 1 ms 212 KB Correct answer: answer = 21
49 Correct 0 ms 304 KB Correct answer: answer = 71
50 Correct 1 ms 212 KB Correct answer: answer = 77
51 Correct 1 ms 212 KB Correct answer: answer = 400
52 Correct 1 ms 212 KB Correct answer: answer = 996004
53 Correct 1 ms 212 KB Correct answer: answer = 997310
54 Correct 1 ms 212 KB Correct answer: answer = 990781
55 Correct 1 ms 304 KB Correct answer: answer = 996545
56 Correct 1 ms 212 KB Correct answer: answer = 484
57 Correct 1 ms 308 KB Correct answer: answer = 484
58 Correct 1 ms 340 KB Correct answer: answer = 63501
59 Correct 1 ms 212 KB Correct answer: answer = 323501
60 Correct 2 ms 212 KB Correct answer: answer = 752500
61 Correct 1 ms 312 KB Correct answer: answer = 761480
62 Correct 1 ms 212 KB Correct answer: answer = 758932
63 Correct 1 ms 212 KB Correct answer: answer = 1000000
64 Correct 1 ms 212 KB Correct answer: answer = 750500
65 Correct 1 ms 308 KB Correct answer: answer = 1000000
66 Correct 1 ms 212 KB Correct answer: answer = 250000
67 Correct 1 ms 212 KB Correct answer: answer = 250000
68 Correct 1 ms 212 KB Correct answer: answer = 1000000
69 Correct 1 ms 212 KB Correct answer: answer = 994009
70 Correct 1 ms 312 KB Correct answer: answer = 59315
71 Correct 1 ms 212 KB Correct answer: answer = 25454
72 Correct 1 ms 212 KB Correct answer: answer = 1504
73 Correct 1 ms 212 KB Correct answer: answer = 37486
74 Correct 1 ms 212 KB Correct answer: answer = 4284
75 Correct 1 ms 212 KB Correct answer: answer = 158008
76 Correct 1 ms 212 KB Correct answer: answer = 51860
77 Correct 1 ms 212 KB Correct answer: answer = 12985
78 Correct 2 ms 468 KB Correct answer: answer = 997864126212
79 Correct 2 ms 468 KB Correct answer: answer = 998608411647
80 Correct 2 ms 468 KB Correct answer: answer = 995265560477
81 Correct 2 ms 468 KB Correct answer: answer = 10125000
82 Correct 2 ms 468 KB Correct answer: answer = 2291668
83 Correct 2 ms 340 KB Correct answer: answer = 42388
84 Correct 2 ms 340 KB Correct answer: answer = 10318
85 Correct 2 ms 340 KB Correct answer: answer = 3416
86 Correct 2 ms 468 KB Correct answer: answer = 331708193881
87 Correct 4 ms 576 KB Correct answer: answer = 2861193756
88 Correct 5 ms 468 KB Correct answer: answer = 114646930
89 Correct 3 ms 468 KB Correct answer: answer = 9280921
90 Correct 7 ms 468 KB Correct answer: answer = 999984053400
91 Correct 5 ms 576 KB Correct answer: answer = 750935949134
92 Correct 1 ms 468 KB Correct answer: answer = 1000000000000
93 Correct 2 ms 468 KB Correct answer: answer = 998762383161
94 Correct 3 ms 572 KB Correct answer: answer = 23017412908
95 Correct 1 ms 448 KB Correct answer: answer = 728143410622
96 Correct 2 ms 340 KB Correct answer: answer = 2
97 Correct 3 ms 468 KB Correct answer: answer = 1824916
98 Correct 5 ms 448 KB Correct answer: answer = 10680029
99 Correct 3 ms 468 KB Correct answer: answer = 18351700
100 Correct 2 ms 452 KB Correct answer: answer = 16040026
101 Correct 2 ms 444 KB Correct answer: answer = 253968628325
102 Correct 2 ms 340 KB Correct answer: answer = 10267
103 Correct 6 ms 468 KB Correct answer: answer = 2582408
104 Correct 2 ms 396 KB Correct answer: answer = 78024964781
105 Correct 2 ms 468 KB Correct answer: answer = 9866346457
106 Correct 2 ms 468 KB Correct answer: answer = 3327720949
107 Correct 2 ms 452 KB Correct answer: answer = 86064128360
108 Correct 2 ms 468 KB Correct answer: answer = 12698259150
109 Correct 5 ms 560 KB Correct answer: answer = 1185259288
110 Correct 15 ms 2364 KB Correct answer: answer = 999889968863
111 Correct 21 ms 2384 KB Correct answer: answer = 999861384931
112 Correct 16 ms 2408 KB Correct answer: answer = 999811809929
113 Correct 15 ms 2364 KB Correct answer: answer = 999869756441
114 Correct 17 ms 3280 KB Correct answer: answer = 1700000000
115 Correct 25 ms 3344 KB Correct answer: answer = 131666670
116 Correct 5 ms 1344 KB Correct answer: answer = 89478486
117 Correct 12 ms 1364 KB Correct answer: answer = 4971040
118 Correct 13 ms 1364 KB Correct answer: answer = 2711494
119 Correct 40 ms 3536 KB Correct answer: answer = 25252530
120 Correct 38 ms 3536 KB Correct answer: answer = 62500000
121 Correct 19 ms 3428 KB Correct answer: answer = 333175097780
122 Correct 33 ms 3436 KB Correct answer: answer = 33121180179
123 Correct 43 ms 3384 KB Correct answer: answer = 9802314015
124 Correct 36 ms 3528 KB Correct answer: answer = 32567551
125 Correct 57 ms 3512 KB Correct answer: answer = 997525000000
126 Correct 39 ms 3244 KB Correct answer: answer = 752723538884
127 Correct 11 ms 2256 KB Correct answer: answer = 1000000000000
128 Correct 14 ms 2360 KB Correct answer: answer = 999978000121
129 Correct 14 ms 2352 KB Correct answer: answer = 745986144735
130 Correct 10 ms 1892 KB Correct answer: answer = 2
131 Correct 31 ms 3468 KB Correct answer: answer = 277966670
132 Correct 22 ms 3272 KB Correct answer: answer = 2500900082
133 Correct 21 ms 2352 KB Correct answer: answer = 301248349636
134 Correct 23 ms 1804 KB Correct answer: answer = 14118891
135 Correct 16 ms 2384 KB Correct answer: answer = 14384977265
136 Correct 15 ms 2384 KB Correct answer: answer = 3681368330
137 Correct 16 ms 2364 KB Correct answer: answer = 2720316816
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Correct answer: answer = 4
2 Correct 1 ms 212 KB Correct answer: answer = 4
3 Correct 1 ms 212 KB Correct answer: answer = 4
4 Correct 1 ms 212 KB Correct answer: answer = 12
5 Correct 0 ms 212 KB Correct answer: answer = 52
6 Correct 1 ms 212 KB Correct answer: answer = 210
7 Correct 0 ms 212 KB Correct answer: answer = 88
8 Correct 0 ms 212 KB Correct answer: answer = 7696
9 Correct 1 ms 212 KB Correct answer: answer = 1
10 Correct 1 ms 212 KB Correct answer: answer = 2374
11 Correct 0 ms 212 KB Correct answer: answer = 9502
12 Correct 0 ms 212 KB Correct answer: answer = 49
13 Correct 1 ms 212 KB Correct answer: answer = 151
14 Correct 1 ms 212 KB Correct answer: answer = 7550
15 Correct 0 ms 212 KB Correct answer: answer = 7220
16 Correct 1 ms 212 KB Correct answer: answer = 7550
17 Correct 0 ms 212 KB Correct answer: answer = 10000
18 Correct 0 ms 212 KB Correct answer: answer = 10000
19 Correct 0 ms 212 KB Correct answer: answer = 624
20 Correct 0 ms 212 KB Correct answer: answer = 10000
21 Correct 3 ms 212 KB Correct answer: answer = 1
22 Correct 1 ms 212 KB Correct answer: answer = 4
23 Correct 1 ms 212 KB Correct answer: answer = 1
24 Correct 1 ms 212 KB Correct answer: answer = 5
25 Correct 0 ms 212 KB Correct answer: answer = 41
26 Correct 1 ms 212 KB Correct answer: answer = 71923
27 Correct 1 ms 212 KB Correct answer: answer = 77137
28 Correct 1 ms 312 KB Correct answer: answer = 764
29 Correct 1 ms 212 KB Correct answer: answer = 250000
30 Correct 1 ms 212 KB Correct answer: answer = 500
31 Correct 1 ms 212 KB Correct answer: answer = 32
32 Correct 1 ms 212 KB Correct answer: answer = 130050
33 Correct 1 ms 212 KB Correct answer: answer = 5110
34 Correct 1 ms 212 KB Correct answer: answer = 2626
35 Correct 1 ms 212 KB Correct answer: answer = 796
36 Correct 1 ms 340 KB Correct answer: answer = 7580
37 Correct 1 ms 340 KB Correct answer: answer = 1904
38 Correct 1 ms 340 KB Correct answer: answer = 996004
39 Correct 1 ms 308 KB Correct answer: answer = 38817
40 Correct 1 ms 212 KB Correct answer: answer = 4096
41 Correct 1 ms 212 KB Correct answer: answer = 1
42 Correct 1 ms 212 KB Correct answer: answer = 1
43 Correct 1 ms 304 KB Correct answer: answer = 2040
44 Correct 0 ms 212 KB Correct answer: answer = 2
45 Correct 1 ms 212 KB Correct answer: answer = 4
46 Correct 0 ms 212 KB Correct answer: answer = 9
47 Correct 1 ms 212 KB Correct answer: answer = 9
48 Correct 1 ms 212 KB Correct answer: answer = 21
49 Correct 0 ms 304 KB Correct answer: answer = 71
50 Correct 1 ms 212 KB Correct answer: answer = 77
51 Correct 1 ms 212 KB Correct answer: answer = 400
52 Correct 1 ms 212 KB Correct answer: answer = 996004
53 Correct 1 ms 212 KB Correct answer: answer = 997310
54 Correct 1 ms 212 KB Correct answer: answer = 990781
55 Correct 1 ms 304 KB Correct answer: answer = 996545
56 Correct 1 ms 212 KB Correct answer: answer = 484
57 Correct 1 ms 308 KB Correct answer: answer = 484
58 Correct 1 ms 340 KB Correct answer: answer = 63501
59 Correct 1 ms 212 KB Correct answer: answer = 323501
60 Correct 2 ms 212 KB Correct answer: answer = 752500
61 Correct 1 ms 312 KB Correct answer: answer = 761480
62 Correct 1 ms 212 KB Correct answer: answer = 758932
63 Correct 1 ms 212 KB Correct answer: answer = 1000000
64 Correct 1 ms 212 KB Correct answer: answer = 750500
65 Correct 1 ms 308 KB Correct answer: answer = 1000000
66 Correct 1 ms 212 KB Correct answer: answer = 250000
67 Correct 1 ms 212 KB Correct answer: answer = 250000
68 Correct 1 ms 212 KB Correct answer: answer = 1000000
69 Correct 1 ms 212 KB Correct answer: answer = 994009
70 Correct 1 ms 312 KB Correct answer: answer = 59315
71 Correct 1 ms 212 KB Correct answer: answer = 25454
72 Correct 1 ms 212 KB Correct answer: answer = 1504
73 Correct 1 ms 212 KB Correct answer: answer = 37486
74 Correct 1 ms 212 KB Correct answer: answer = 4284
75 Correct 1 ms 212 KB Correct answer: answer = 158008
76 Correct 1 ms 212 KB Correct answer: answer = 51860
77 Correct 1 ms 212 KB Correct answer: answer = 12985
78 Correct 2 ms 468 KB Correct answer: answer = 997864126212
79 Correct 2 ms 468 KB Correct answer: answer = 998608411647
80 Correct 2 ms 468 KB Correct answer: answer = 995265560477
81 Correct 2 ms 468 KB Correct answer: answer = 10125000
82 Correct 2 ms 468 KB Correct answer: answer = 2291668
83 Correct 2 ms 340 KB Correct answer: answer = 42388
84 Correct 2 ms 340 KB Correct answer: answer = 10318
85 Correct 2 ms 340 KB Correct answer: answer = 3416
86 Correct 2 ms 468 KB Correct answer: answer = 331708193881
87 Correct 4 ms 576 KB Correct answer: answer = 2861193756
88 Correct 5 ms 468 KB Correct answer: answer = 114646930
89 Correct 3 ms 468 KB Correct answer: answer = 9280921
90 Correct 7 ms 468 KB Correct answer: answer = 999984053400
91 Correct 5 ms 576 KB Correct answer: answer = 750935949134
92 Correct 1 ms 468 KB Correct answer: answer = 1000000000000
93 Correct 2 ms 468 KB Correct answer: answer = 998762383161
94 Correct 3 ms 572 KB Correct answer: answer = 23017412908
95 Correct 1 ms 448 KB Correct answer: answer = 728143410622
96 Correct 2 ms 340 KB Correct answer: answer = 2
97 Correct 3 ms 468 KB Correct answer: answer = 1824916
98 Correct 5 ms 448 KB Correct answer: answer = 10680029
99 Correct 3 ms 468 KB Correct answer: answer = 18351700
100 Correct 2 ms 452 KB Correct answer: answer = 16040026
101 Correct 2 ms 444 KB Correct answer: answer = 253968628325
102 Correct 2 ms 340 KB Correct answer: answer = 10267
103 Correct 6 ms 468 KB Correct answer: answer = 2582408
104 Correct 2 ms 396 KB Correct answer: answer = 78024964781
105 Correct 2 ms 468 KB Correct answer: answer = 9866346457
106 Correct 2 ms 468 KB Correct answer: answer = 3327720949
107 Correct 2 ms 452 KB Correct answer: answer = 86064128360
108 Correct 2 ms 468 KB Correct answer: answer = 12698259150
109 Correct 5 ms 560 KB Correct answer: answer = 1185259288
110 Correct 15 ms 2364 KB Correct answer: answer = 999889968863
111 Correct 21 ms 2384 KB Correct answer: answer = 999861384931
112 Correct 16 ms 2408 KB Correct answer: answer = 999811809929
113 Correct 15 ms 2364 KB Correct answer: answer = 999869756441
114 Correct 17 ms 3280 KB Correct answer: answer = 1700000000
115 Correct 25 ms 3344 KB Correct answer: answer = 131666670
116 Correct 5 ms 1344 KB Correct answer: answer = 89478486
117 Correct 12 ms 1364 KB Correct answer: answer = 4971040
118 Correct 13 ms 1364 KB Correct answer: answer = 2711494
119 Correct 40 ms 3536 KB Correct answer: answer = 25252530
120 Correct 38 ms 3536 KB Correct answer: answer = 62500000
121 Correct 19 ms 3428 KB Correct answer: answer = 333175097780
122 Correct 33 ms 3436 KB Correct answer: answer = 33121180179
123 Correct 43 ms 3384 KB Correct answer: answer = 9802314015
124 Correct 36 ms 3528 KB Correct answer: answer = 32567551
125 Correct 57 ms 3512 KB Correct answer: answer = 997525000000
126 Correct 39 ms 3244 KB Correct answer: answer = 752723538884
127 Correct 11 ms 2256 KB Correct answer: answer = 1000000000000
128 Correct 14 ms 2360 KB Correct answer: answer = 999978000121
129 Correct 14 ms 2352 KB Correct answer: answer = 745986144735
130 Correct 10 ms 1892 KB Correct answer: answer = 2
131 Correct 31 ms 3468 KB Correct answer: answer = 277966670
132 Correct 22 ms 3272 KB Correct answer: answer = 2500900082
133 Correct 21 ms 2352 KB Correct answer: answer = 301248349636
134 Correct 23 ms 1804 KB Correct answer: answer = 14118891
135 Correct 16 ms 2384 KB Correct answer: answer = 14384977265
136 Correct 15 ms 2384 KB Correct answer: answer = 3681368330
137 Correct 16 ms 2364 KB Correct answer: answer = 2720316816
138 Correct 29 ms 4420 KB Correct answer: answer = 999976000144
139 Correct 31 ms 4292 KB Correct answer: answer = 999856102410
140 Correct 32 ms 4280 KB Correct answer: answer = 999958401531
141 Correct 34 ms 4256 KB Correct answer: answer = 999769649944
142 Correct 30 ms 4344 KB Correct answer: answer = 999874525918
143 Correct 32 ms 6220 KB Correct answer: answer = 6050000000
144 Correct 49 ms 6700 KB Correct answer: answer = 1112500000
145 Correct 18 ms 4260 KB Correct answer: answer = 4294967296
146 Correct 63 ms 4536 KB Correct answer: answer = 87652406
147 Correct 66 ms 4648 KB Correct answer: answer = 6297664
148 Correct 64 ms 4548 KB Correct answer: answer = 196612
149 Correct 87 ms 6832 KB Correct answer: answer = 15015100
150 Correct 102 ms 6812 KB Correct answer: answer = 25000000
151 Correct 40 ms 6308 KB Correct answer: answer = 333230209550
152 Correct 104 ms 6260 KB Correct answer: answer = 917123769
153 Correct 129 ms 6464 KB Correct answer: answer = 95162
154 Correct 68 ms 6724 KB Correct answer: answer = 382616191
155 Correct 135 ms 6832 KB Correct answer: answer = 990033333400
156 Correct 117 ms 6704 KB Correct answer: answer = 990000100000
157 Correct 119 ms 6084 KB Correct answer: answer = 749998188180
158 Correct 22 ms 4280 KB Correct answer: answer = 1000000000000
159 Correct 38 ms 4292 KB Correct answer: answer = 999988000036
160 Correct 40 ms 4292 KB Correct answer: answer = 744929274393
161 Correct 30 ms 3372 KB Correct answer: answer = 2
162 Correct 116 ms 6700 KB Correct answer: answer = 1300024
163 Correct 44 ms 6296 KB Correct answer: answer = 5000700010
164 Correct 32 ms 4272 KB Correct answer: answer = 354997100800
165 Correct 67 ms 3336 KB Correct answer: answer = 257000
166 Correct 75 ms 3884 KB Correct answer: answer = 3765323
167 Correct 62 ms 3628 KB Correct answer: answer = 1525903
168 Correct 28 ms 4292 KB Correct answer: answer = 67618137730
169 Correct 29 ms 4292 KB Correct answer: answer = 12656680171
170 Correct 33 ms 4292 KB Correct answer: answer = 579831736
171 Correct 61 ms 4812 KB Correct answer: answer = 23605611
172 Correct 34 ms 4264 KB Correct answer: answer = 7052481200
173 Correct 38 ms 4392 KB Correct answer: answer = 1314039500
174 Correct 47 ms 4652 KB Correct answer: answer = 302484000
175 Correct 90 ms 5948 KB Correct answer: answer = 52348480