Submission #764667

# Submission time Handle Problem Language Result Execution time Memory
764667 2023-06-23T19:40:33 Z mousebeaver Aliens (IOI16_aliens) C++14
100 / 100
1055 ms 8124 KB
#include "aliens.h"
#include <bits/stdc++.h>
#define ll long long
#define INF numeric_limits<ll>::max()/2
#define pll pair<ll, ll>
using namespace std;

ll cost(ll i, ll j, vector<pll>& a)
{
    ll root = a[j-1].second - a[i-1].first+1;
    ll area = root*root; //Area of the necessary square to cover the given cells
    if(i > 1 && a[i-1].first <= a[i-2].second)
    {
        //Calculate the overlap with the previous square
        root = a[i-2].second-a[i-1].first+1;
        area -= root*root;
    }
    return area;
}

void calc(vector<vector<ll>>& dp, ll j, ll left, ll right, ll optl, ll optr, vector<pll>& a)
{
    if(left > right)
    {
        return;
    }

    ll mid = (left+right)/2;
    ll opt = -1;
    for(ll b = optl; b <= min(optr, mid); b++)
    {
        ll val = dp[b-1][j-1]+cost(b, mid, a);

        if(val < dp[mid][j])
        {
            dp[mid][j] = val;
            opt = b;
        }
    }
    dp[mid][j] = min(dp[mid][j], dp[mid][j-1]);

    calc(dp, j, left, mid-1, optl, opt, a);
    calc(dp, j, mid+1, right, opt, optr, a);
}

ll f(ll i, ll j, vector<ll>& dp, vector<pll>& a) //First index with j better as i
{
    ll n = a.size();
    if(dp[i-1]+cost(i, n, a) <= dp[j-1]+cost(j, n, a))
    {
        return n+1;
    }

    ll left = j;
    ll right = n;
    while(left < right)
    {
        ll mid = (left+right)/2;
        if(dp[j-1]+cost(j, mid, a) < dp[i-1]+cost(i, mid, a))
        {
            right = mid;
        }
        else
        {
            left = mid+1;
        }
    }
    return left;
}

void calcDP(vector<pll>& a, ll delt, ll& cnt, ll& val)
{
    ll n = a.size();
    vector<ll> dp(n+1, INF);
    vector<ll> counter(n+1, 0);
    dp[0] = 0;
    deque<pll> q = {{1, 1}}; //index of point, starting being the best

    for(ll i = 1; i <= n; i++)
    {
        pll t = q.front();
        q.pop_front();
        while(q.size() && q.front().second <= i)
        {
            t = q.front();
            q.pop_front();
        }

        dp[i] = dp[t.first-1]+cost(t.first, i, a)+delt;
        counter[i] = counter[t.first-1]+1;
        q.push_front(t);

        if(i == n)
        {
            break;
        }
        while(q.size() && f(q.back().first, i+1, dp, a) <= q.back().second)
        {
            q.pop_back();
        }
        ll start = 1;
        if(q.size())
        {
            start = f(q.back().first, i+1, dp, a);
        }
        q.push_back({i+1, start});
    }

    val = dp[n];
    cnt = counter[n];
}

long long take_photos(int n, int m, int k, std::vector<int> r, std::vector<int> c)
{
    vector<pll> a(n);
    for(ll i = 0; i < n; i++)
    {
        a[i] = {r[i], c[i]};
        if(c[i] < r[i]) //Mirror to diagonal or above
        {
            swap(a[i].first, a[i].second);
        }
    }

    sort(a.begin(), a.end());
    vector<pll> b(0);
    for(ll i = 0; i < n; i++)
    {
        if((i == n-1 || a[i].first != a[i+1].first) && (b.empty() || a[i].second > b.back().second))
        {
            b.push_back(a[i]);
        }
    }
    a = b;
    n = a.size();
    k = min(k, n);

    if(false)
    {
        vector<vector<ll>> dp(n+1, vector<ll> (k+1, INF));
        dp[0][0] = 0;
        for(ll i = 1; i <= n; i++)
        {
            for(ll j = 1; j <= k; j++)
            {
                dp[i][j] = dp[i][j-1];
                for(ll b = 1; b <= i; b++)
                {
                    ll val = dp[b-1][j-1]+cost(b, i, a);
                    dp[i][j] = min(dp[i][j], val);
                }
            }
        }

        return dp[n][k];
    }

    if(false)
    {
        vector<vector<ll>> dp(n+1, vector<ll> (k+1, INF));
        dp[0][0] = 0;

        for(ll j = 1; j <= k; j++)
        {
            calc(dp, j, j, n, 1, n, a);
        }

        return dp[n][k];
    }

    ll left = 0;
    ll right = (ll) m * (ll) m;
    ll val = 0; ll cnt;
    while(left < right)
    {
        ll mid = (left+right)/2;
        calcDP(a, mid, cnt, val);

        if(cnt > k)
        {
            left = mid+1;
        }
        else
        {
            right = mid;
        }
    }

    calcDP(a, left, cnt, val);
    return val-left*k;
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 212 KB Correct answer: answer = 4
2 Correct 1 ms 300 KB Correct answer: answer = 4
3 Correct 1 ms 212 KB Correct answer: answer = 4
4 Correct 1 ms 296 KB Correct answer: answer = 12
5 Correct 1 ms 300 KB Correct answer: answer = 52
6 Correct 1 ms 212 KB Correct answer: answer = 210
7 Correct 1 ms 292 KB Correct answer: answer = 88
8 Correct 1 ms 304 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 1 ms 340 KB Correct answer: answer = 9502
12 Correct 1 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 1 ms 212 KB Correct answer: answer = 7220
16 Correct 1 ms 340 KB Correct answer: answer = 7550
17 Correct 1 ms 212 KB Correct answer: answer = 10000
18 Correct 1 ms 212 KB Correct answer: answer = 10000
19 Correct 1 ms 212 KB Correct answer: answer = 624
20 Correct 1 ms 300 KB Correct answer: answer = 10000
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Correct answer: answer = 1
2 Correct 1 ms 304 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 1 ms 340 KB Correct answer: answer = 41
6 Correct 1 ms 300 KB Correct answer: answer = 71923
7 Correct 1 ms 212 KB Correct answer: answer = 77137
8 Correct 2 ms 296 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 212 KB Correct answer: answer = 7580
17 Correct 1 ms 296 KB Correct answer: answer = 1904
18 Correct 1 ms 340 KB Correct answer: answer = 996004
19 Correct 2 ms 212 KB Correct answer: answer = 38817
20 Correct 2 ms 296 KB Correct answer: answer = 4096
21 Correct 1 ms 304 KB Correct answer: answer = 1
22 Correct 1 ms 212 KB Correct answer: answer = 1
23 Correct 2 ms 212 KB Correct answer: answer = 2040
24 Correct 1 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 300 KB Correct answer: answer = 4
3 Correct 1 ms 212 KB Correct answer: answer = 4
4 Correct 1 ms 296 KB Correct answer: answer = 12
5 Correct 1 ms 300 KB Correct answer: answer = 52
6 Correct 1 ms 212 KB Correct answer: answer = 210
7 Correct 1 ms 292 KB Correct answer: answer = 88
8 Correct 1 ms 304 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 1 ms 340 KB Correct answer: answer = 9502
12 Correct 1 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 1 ms 212 KB Correct answer: answer = 7220
16 Correct 1 ms 340 KB Correct answer: answer = 7550
17 Correct 1 ms 212 KB Correct answer: answer = 10000
18 Correct 1 ms 212 KB Correct answer: answer = 10000
19 Correct 1 ms 212 KB Correct answer: answer = 624
20 Correct 1 ms 300 KB Correct answer: answer = 10000
21 Correct 0 ms 212 KB Correct answer: answer = 1
22 Correct 1 ms 304 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 1 ms 340 KB Correct answer: answer = 41
26 Correct 1 ms 300 KB Correct answer: answer = 71923
27 Correct 1 ms 212 KB Correct answer: answer = 77137
28 Correct 2 ms 296 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 212 KB Correct answer: answer = 7580
37 Correct 1 ms 296 KB Correct answer: answer = 1904
38 Correct 1 ms 340 KB Correct answer: answer = 996004
39 Correct 2 ms 212 KB Correct answer: answer = 38817
40 Correct 2 ms 296 KB Correct answer: answer = 4096
41 Correct 1 ms 304 KB Correct answer: answer = 1
42 Correct 1 ms 212 KB Correct answer: answer = 1
43 Correct 2 ms 212 KB Correct answer: answer = 2040
44 Correct 1 ms 212 KB Correct answer: answer = 2
45 Correct 1 ms 212 KB Correct answer: answer = 4
46 Correct 1 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 1 ms 212 KB Correct answer: answer = 71
50 Correct 1 ms 304 KB Correct answer: answer = 77
51 Correct 1 ms 296 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 212 KB Correct answer: answer = 996545
56 Correct 1 ms 212 KB Correct answer: answer = 484
57 Correct 1 ms 304 KB Correct answer: answer = 484
58 Correct 2 ms 340 KB Correct answer: answer = 63501
59 Correct 2 ms 212 KB Correct answer: answer = 323501
60 Correct 2 ms 212 KB Correct answer: answer = 752500
61 Correct 1 ms 212 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 2 ms 212 KB Correct answer: answer = 750500
65 Correct 1 ms 212 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 296 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 300 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 300 KB Correct answer: answer = 4
3 Correct 1 ms 212 KB Correct answer: answer = 4
4 Correct 1 ms 296 KB Correct answer: answer = 12
5 Correct 1 ms 300 KB Correct answer: answer = 52
6 Correct 1 ms 212 KB Correct answer: answer = 210
7 Correct 1 ms 292 KB Correct answer: answer = 88
8 Correct 1 ms 304 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 1 ms 340 KB Correct answer: answer = 9502
12 Correct 1 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 1 ms 212 KB Correct answer: answer = 7220
16 Correct 1 ms 340 KB Correct answer: answer = 7550
17 Correct 1 ms 212 KB Correct answer: answer = 10000
18 Correct 1 ms 212 KB Correct answer: answer = 10000
19 Correct 1 ms 212 KB Correct answer: answer = 624
20 Correct 1 ms 300 KB Correct answer: answer = 10000
21 Correct 0 ms 212 KB Correct answer: answer = 1
22 Correct 1 ms 304 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 1 ms 340 KB Correct answer: answer = 41
26 Correct 1 ms 300 KB Correct answer: answer = 71923
27 Correct 1 ms 212 KB Correct answer: answer = 77137
28 Correct 2 ms 296 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 212 KB Correct answer: answer = 7580
37 Correct 1 ms 296 KB Correct answer: answer = 1904
38 Correct 1 ms 340 KB Correct answer: answer = 996004
39 Correct 2 ms 212 KB Correct answer: answer = 38817
40 Correct 2 ms 296 KB Correct answer: answer = 4096
41 Correct 1 ms 304 KB Correct answer: answer = 1
42 Correct 1 ms 212 KB Correct answer: answer = 1
43 Correct 2 ms 212 KB Correct answer: answer = 2040
44 Correct 1 ms 212 KB Correct answer: answer = 2
45 Correct 1 ms 212 KB Correct answer: answer = 4
46 Correct 1 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 1 ms 212 KB Correct answer: answer = 71
50 Correct 1 ms 304 KB Correct answer: answer = 77
51 Correct 1 ms 296 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 212 KB Correct answer: answer = 996545
56 Correct 1 ms 212 KB Correct answer: answer = 484
57 Correct 1 ms 304 KB Correct answer: answer = 484
58 Correct 2 ms 340 KB Correct answer: answer = 63501
59 Correct 2 ms 212 KB Correct answer: answer = 323501
60 Correct 2 ms 212 KB Correct answer: answer = 752500
61 Correct 1 ms 212 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 2 ms 212 KB Correct answer: answer = 750500
65 Correct 1 ms 212 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 296 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 300 KB Correct answer: answer = 51860
77 Correct 1 ms 212 KB Correct answer: answer = 12985
78 Correct 1 ms 468 KB Correct answer: answer = 997864126212
79 Correct 2 ms 444 KB Correct answer: answer = 998608411647
80 Correct 2 ms 436 KB Correct answer: answer = 995265560477
81 Correct 12 ms 596 KB Correct answer: answer = 10125000
82 Correct 15 ms 620 KB Correct answer: answer = 2291668
83 Correct 5 ms 340 KB Correct answer: answer = 42388
84 Correct 5 ms 340 KB Correct answer: answer = 10318
85 Correct 5 ms 340 KB Correct answer: answer = 3416
86 Correct 24 ms 640 KB Correct answer: answer = 331708193881
87 Correct 30 ms 596 KB Correct answer: answer = 2861193756
88 Correct 25 ms 596 KB Correct answer: answer = 114646930
89 Correct 16 ms 596 KB Correct answer: answer = 9280921
90 Correct 16 ms 508 KB Correct answer: answer = 999984053400
91 Correct 32 ms 512 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 34 ms 580 KB Correct answer: answer = 23017412908
95 Correct 2 ms 468 KB Correct answer: answer = 728143410622
96 Correct 1 ms 308 KB Correct answer: answer = 2
97 Correct 23 ms 568 KB Correct answer: answer = 1824916
98 Correct 19 ms 596 KB Correct answer: answer = 10680029
99 Correct 20 ms 572 KB Correct answer: answer = 18351700
100 Correct 21 ms 596 KB Correct answer: answer = 16040026
101 Correct 3 ms 468 KB Correct answer: answer = 253968628325
102 Correct 7 ms 436 KB Correct answer: answer = 10267
103 Correct 19 ms 596 KB Correct answer: answer = 2582408
104 Correct 2 ms 468 KB Correct answer: answer = 78024964781
105 Correct 2 ms 468 KB Correct answer: answer = 9866346457
106 Correct 4 ms 468 KB Correct answer: answer = 3327720949
107 Correct 2 ms 468 KB Correct answer: answer = 86064128360
108 Correct 5 ms 512 KB Correct answer: answer = 12698259150
109 Correct 18 ms 600 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 300 KB Correct answer: answer = 4
3 Correct 1 ms 212 KB Correct answer: answer = 4
4 Correct 1 ms 296 KB Correct answer: answer = 12
5 Correct 1 ms 300 KB Correct answer: answer = 52
6 Correct 1 ms 212 KB Correct answer: answer = 210
7 Correct 1 ms 292 KB Correct answer: answer = 88
8 Correct 1 ms 304 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 1 ms 340 KB Correct answer: answer = 9502
12 Correct 1 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 1 ms 212 KB Correct answer: answer = 7220
16 Correct 1 ms 340 KB Correct answer: answer = 7550
17 Correct 1 ms 212 KB Correct answer: answer = 10000
18 Correct 1 ms 212 KB Correct answer: answer = 10000
19 Correct 1 ms 212 KB Correct answer: answer = 624
20 Correct 1 ms 300 KB Correct answer: answer = 10000
21 Correct 0 ms 212 KB Correct answer: answer = 1
22 Correct 1 ms 304 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 1 ms 340 KB Correct answer: answer = 41
26 Correct 1 ms 300 KB Correct answer: answer = 71923
27 Correct 1 ms 212 KB Correct answer: answer = 77137
28 Correct 2 ms 296 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 212 KB Correct answer: answer = 7580
37 Correct 1 ms 296 KB Correct answer: answer = 1904
38 Correct 1 ms 340 KB Correct answer: answer = 996004
39 Correct 2 ms 212 KB Correct answer: answer = 38817
40 Correct 2 ms 296 KB Correct answer: answer = 4096
41 Correct 1 ms 304 KB Correct answer: answer = 1
42 Correct 1 ms 212 KB Correct answer: answer = 1
43 Correct 2 ms 212 KB Correct answer: answer = 2040
44 Correct 1 ms 212 KB Correct answer: answer = 2
45 Correct 1 ms 212 KB Correct answer: answer = 4
46 Correct 1 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 1 ms 212 KB Correct answer: answer = 71
50 Correct 1 ms 304 KB Correct answer: answer = 77
51 Correct 1 ms 296 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 212 KB Correct answer: answer = 996545
56 Correct 1 ms 212 KB Correct answer: answer = 484
57 Correct 1 ms 304 KB Correct answer: answer = 484
58 Correct 2 ms 340 KB Correct answer: answer = 63501
59 Correct 2 ms 212 KB Correct answer: answer = 323501
60 Correct 2 ms 212 KB Correct answer: answer = 752500
61 Correct 1 ms 212 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 2 ms 212 KB Correct answer: answer = 750500
65 Correct 1 ms 212 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 296 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 300 KB Correct answer: answer = 51860
77 Correct 1 ms 212 KB Correct answer: answer = 12985
78 Correct 1 ms 468 KB Correct answer: answer = 997864126212
79 Correct 2 ms 444 KB Correct answer: answer = 998608411647
80 Correct 2 ms 436 KB Correct answer: answer = 995265560477
81 Correct 12 ms 596 KB Correct answer: answer = 10125000
82 Correct 15 ms 620 KB Correct answer: answer = 2291668
83 Correct 5 ms 340 KB Correct answer: answer = 42388
84 Correct 5 ms 340 KB Correct answer: answer = 10318
85 Correct 5 ms 340 KB Correct answer: answer = 3416
86 Correct 24 ms 640 KB Correct answer: answer = 331708193881
87 Correct 30 ms 596 KB Correct answer: answer = 2861193756
88 Correct 25 ms 596 KB Correct answer: answer = 114646930
89 Correct 16 ms 596 KB Correct answer: answer = 9280921
90 Correct 16 ms 508 KB Correct answer: answer = 999984053400
91 Correct 32 ms 512 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 34 ms 580 KB Correct answer: answer = 23017412908
95 Correct 2 ms 468 KB Correct answer: answer = 728143410622
96 Correct 1 ms 308 KB Correct answer: answer = 2
97 Correct 23 ms 568 KB Correct answer: answer = 1824916
98 Correct 19 ms 596 KB Correct answer: answer = 10680029
99 Correct 20 ms 572 KB Correct answer: answer = 18351700
100 Correct 21 ms 596 KB Correct answer: answer = 16040026
101 Correct 3 ms 468 KB Correct answer: answer = 253968628325
102 Correct 7 ms 436 KB Correct answer: answer = 10267
103 Correct 19 ms 596 KB Correct answer: answer = 2582408
104 Correct 2 ms 468 KB Correct answer: answer = 78024964781
105 Correct 2 ms 468 KB Correct answer: answer = 9866346457
106 Correct 4 ms 468 KB Correct answer: answer = 3327720949
107 Correct 2 ms 468 KB Correct answer: answer = 86064128360
108 Correct 5 ms 512 KB Correct answer: answer = 12698259150
109 Correct 18 ms 600 KB Correct answer: answer = 1185259288
110 Correct 12 ms 2516 KB Correct answer: answer = 999889968863
111 Correct 16 ms 2472 KB Correct answer: answer = 999861384931
112 Correct 13 ms 2476 KB Correct answer: answer = 999811809929
113 Correct 12 ms 2516 KB Correct answer: answer = 999869756441
114 Correct 189 ms 4080 KB Correct answer: answer = 1700000000
115 Correct 238 ms 4160 KB Correct answer: answer = 131666670
116 Correct 64 ms 1488 KB Correct answer: answer = 89478486
117 Correct 54 ms 1460 KB Correct answer: answer = 4971040
118 Correct 51 ms 1488 KB Correct answer: answer = 2711494
119 Correct 190 ms 4140 KB Correct answer: answer = 25252530
120 Correct 198 ms 4140 KB Correct answer: answer = 62500000
121 Correct 388 ms 4040 KB Correct answer: answer = 333175097780
122 Correct 582 ms 4040 KB Correct answer: answer = 33121180179
123 Correct 573 ms 4040 KB Correct answer: answer = 9802314015
124 Correct 221 ms 4168 KB Correct answer: answer = 32567551
125 Correct 246 ms 4180 KB Correct answer: answer = 997525000000
126 Correct 555 ms 3912 KB Correct answer: answer = 752723538884
127 Correct 9 ms 2388 KB Correct answer: answer = 1000000000000
128 Correct 12 ms 2476 KB Correct answer: answer = 999978000121
129 Correct 13 ms 2476 KB Correct answer: answer = 745986144735
130 Correct 7 ms 2004 KB Correct answer: answer = 2
131 Correct 352 ms 4144 KB Correct answer: answer = 277966670
132 Correct 323 ms 3992 KB Correct answer: answer = 2500900082
133 Correct 43 ms 2604 KB Correct answer: answer = 301248349636
134 Correct 150 ms 2156 KB Correct answer: answer = 14118891
135 Correct 12 ms 2504 KB Correct answer: answer = 14384977265
136 Correct 14 ms 2480 KB Correct answer: answer = 3681368330
137 Correct 15 ms 2516 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 300 KB Correct answer: answer = 4
3 Correct 1 ms 212 KB Correct answer: answer = 4
4 Correct 1 ms 296 KB Correct answer: answer = 12
5 Correct 1 ms 300 KB Correct answer: answer = 52
6 Correct 1 ms 212 KB Correct answer: answer = 210
7 Correct 1 ms 292 KB Correct answer: answer = 88
8 Correct 1 ms 304 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 1 ms 340 KB Correct answer: answer = 9502
12 Correct 1 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 1 ms 212 KB Correct answer: answer = 7220
16 Correct 1 ms 340 KB Correct answer: answer = 7550
17 Correct 1 ms 212 KB Correct answer: answer = 10000
18 Correct 1 ms 212 KB Correct answer: answer = 10000
19 Correct 1 ms 212 KB Correct answer: answer = 624
20 Correct 1 ms 300 KB Correct answer: answer = 10000
21 Correct 0 ms 212 KB Correct answer: answer = 1
22 Correct 1 ms 304 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 1 ms 340 KB Correct answer: answer = 41
26 Correct 1 ms 300 KB Correct answer: answer = 71923
27 Correct 1 ms 212 KB Correct answer: answer = 77137
28 Correct 2 ms 296 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 212 KB Correct answer: answer = 7580
37 Correct 1 ms 296 KB Correct answer: answer = 1904
38 Correct 1 ms 340 KB Correct answer: answer = 996004
39 Correct 2 ms 212 KB Correct answer: answer = 38817
40 Correct 2 ms 296 KB Correct answer: answer = 4096
41 Correct 1 ms 304 KB Correct answer: answer = 1
42 Correct 1 ms 212 KB Correct answer: answer = 1
43 Correct 2 ms 212 KB Correct answer: answer = 2040
44 Correct 1 ms 212 KB Correct answer: answer = 2
45 Correct 1 ms 212 KB Correct answer: answer = 4
46 Correct 1 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 1 ms 212 KB Correct answer: answer = 71
50 Correct 1 ms 304 KB Correct answer: answer = 77
51 Correct 1 ms 296 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 212 KB Correct answer: answer = 996545
56 Correct 1 ms 212 KB Correct answer: answer = 484
57 Correct 1 ms 304 KB Correct answer: answer = 484
58 Correct 2 ms 340 KB Correct answer: answer = 63501
59 Correct 2 ms 212 KB Correct answer: answer = 323501
60 Correct 2 ms 212 KB Correct answer: answer = 752500
61 Correct 1 ms 212 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 2 ms 212 KB Correct answer: answer = 750500
65 Correct 1 ms 212 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 296 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 300 KB Correct answer: answer = 51860
77 Correct 1 ms 212 KB Correct answer: answer = 12985
78 Correct 1 ms 468 KB Correct answer: answer = 997864126212
79 Correct 2 ms 444 KB Correct answer: answer = 998608411647
80 Correct 2 ms 436 KB Correct answer: answer = 995265560477
81 Correct 12 ms 596 KB Correct answer: answer = 10125000
82 Correct 15 ms 620 KB Correct answer: answer = 2291668
83 Correct 5 ms 340 KB Correct answer: answer = 42388
84 Correct 5 ms 340 KB Correct answer: answer = 10318
85 Correct 5 ms 340 KB Correct answer: answer = 3416
86 Correct 24 ms 640 KB Correct answer: answer = 331708193881
87 Correct 30 ms 596 KB Correct answer: answer = 2861193756
88 Correct 25 ms 596 KB Correct answer: answer = 114646930
89 Correct 16 ms 596 KB Correct answer: answer = 9280921
90 Correct 16 ms 508 KB Correct answer: answer = 999984053400
91 Correct 32 ms 512 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 34 ms 580 KB Correct answer: answer = 23017412908
95 Correct 2 ms 468 KB Correct answer: answer = 728143410622
96 Correct 1 ms 308 KB Correct answer: answer = 2
97 Correct 23 ms 568 KB Correct answer: answer = 1824916
98 Correct 19 ms 596 KB Correct answer: answer = 10680029
99 Correct 20 ms 572 KB Correct answer: answer = 18351700
100 Correct 21 ms 596 KB Correct answer: answer = 16040026
101 Correct 3 ms 468 KB Correct answer: answer = 253968628325
102 Correct 7 ms 436 KB Correct answer: answer = 10267
103 Correct 19 ms 596 KB Correct answer: answer = 2582408
104 Correct 2 ms 468 KB Correct answer: answer = 78024964781
105 Correct 2 ms 468 KB Correct answer: answer = 9866346457
106 Correct 4 ms 468 KB Correct answer: answer = 3327720949
107 Correct 2 ms 468 KB Correct answer: answer = 86064128360
108 Correct 5 ms 512 KB Correct answer: answer = 12698259150
109 Correct 18 ms 600 KB Correct answer: answer = 1185259288
110 Correct 12 ms 2516 KB Correct answer: answer = 999889968863
111 Correct 16 ms 2472 KB Correct answer: answer = 999861384931
112 Correct 13 ms 2476 KB Correct answer: answer = 999811809929
113 Correct 12 ms 2516 KB Correct answer: answer = 999869756441
114 Correct 189 ms 4080 KB Correct answer: answer = 1700000000
115 Correct 238 ms 4160 KB Correct answer: answer = 131666670
116 Correct 64 ms 1488 KB Correct answer: answer = 89478486
117 Correct 54 ms 1460 KB Correct answer: answer = 4971040
118 Correct 51 ms 1488 KB Correct answer: answer = 2711494
119 Correct 190 ms 4140 KB Correct answer: answer = 25252530
120 Correct 198 ms 4140 KB Correct answer: answer = 62500000
121 Correct 388 ms 4040 KB Correct answer: answer = 333175097780
122 Correct 582 ms 4040 KB Correct answer: answer = 33121180179
123 Correct 573 ms 4040 KB Correct answer: answer = 9802314015
124 Correct 221 ms 4168 KB Correct answer: answer = 32567551
125 Correct 246 ms 4180 KB Correct answer: answer = 997525000000
126 Correct 555 ms 3912 KB Correct answer: answer = 752723538884
127 Correct 9 ms 2388 KB Correct answer: answer = 1000000000000
128 Correct 12 ms 2476 KB Correct answer: answer = 999978000121
129 Correct 13 ms 2476 KB Correct answer: answer = 745986144735
130 Correct 7 ms 2004 KB Correct answer: answer = 2
131 Correct 352 ms 4144 KB Correct answer: answer = 277966670
132 Correct 323 ms 3992 KB Correct answer: answer = 2500900082
133 Correct 43 ms 2604 KB Correct answer: answer = 301248349636
134 Correct 150 ms 2156 KB Correct answer: answer = 14118891
135 Correct 12 ms 2504 KB Correct answer: answer = 14384977265
136 Correct 14 ms 2480 KB Correct answer: answer = 3681368330
137 Correct 15 ms 2516 KB Correct answer: answer = 2720316816
138 Correct 24 ms 4668 KB Correct answer: answer = 999976000144
139 Correct 23 ms 4692 KB Correct answer: answer = 999856102410
140 Correct 23 ms 4684 KB Correct answer: answer = 999958401531
141 Correct 23 ms 4792 KB Correct answer: answer = 999769649944
142 Correct 24 ms 4656 KB Correct answer: answer = 999874525918
143 Correct 438 ms 7992 KB Correct answer: answer = 6050000000
144 Correct 539 ms 8056 KB Correct answer: answer = 1112500000
145 Correct 155 ms 5312 KB Correct answer: answer = 4294967296
146 Correct 267 ms 5400 KB Correct answer: answer = 87652406
147 Correct 243 ms 5440 KB Correct answer: answer = 6297664
148 Correct 246 ms 5440 KB Correct answer: answer = 196612
149 Correct 402 ms 8104 KB Correct answer: answer = 15015100
150 Correct 389 ms 8100 KB Correct answer: answer = 25000000
151 Correct 828 ms 7764 KB Correct answer: answer = 333230209550
152 Correct 1055 ms 7740 KB Correct answer: answer = 917123769
153 Correct 849 ms 7708 KB Correct answer: answer = 95162
154 Correct 510 ms 8124 KB Correct answer: answer = 382616191
155 Correct 504 ms 8096 KB Correct answer: answer = 990033333400
156 Correct 517 ms 8092 KB Correct answer: answer = 990000100000
157 Correct 822 ms 7328 KB Correct answer: answer = 749998188180
158 Correct 17 ms 4652 KB Correct answer: answer = 1000000000000
159 Correct 23 ms 4684 KB Correct answer: answer = 999988000036
160 Correct 24 ms 4796 KB Correct answer: answer = 744929274393
161 Correct 14 ms 3796 KB Correct answer: answer = 2
162 Correct 587 ms 7972 KB Correct answer: answer = 1300024
163 Correct 780 ms 7976 KB Correct answer: answer = 5000700010
164 Correct 92 ms 5072 KB Correct answer: answer = 354997100800
165 Correct 280 ms 4068 KB Correct answer: answer = 257000
166 Correct 235 ms 4168 KB Correct answer: answer = 3765323
167 Correct 230 ms 4168 KB Correct answer: answer = 1525903
168 Correct 23 ms 4692 KB Correct answer: answer = 67618137730
169 Correct 24 ms 4792 KB Correct answer: answer = 12656680171
170 Correct 42 ms 4792 KB Correct answer: answer = 579831736
171 Correct 253 ms 5612 KB Correct answer: answer = 23605611
172 Correct 44 ms 4920 KB Correct answer: answer = 7052481200
173 Correct 94 ms 5124 KB Correct answer: answer = 1314039500
174 Correct 148 ms 5420 KB Correct answer: answer = 302484000
175 Correct 424 ms 6684 KB Correct answer: answer = 52348480