Submission #105183

# Submission time Handle Problem Language Result Execution time Memory
105183 2019-04-10T22:52:47 Z updown1 Aliens (IOI16_aliens) C++17
100 / 100
297 ms 14308 KB
#include "aliens.h"
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
#define For(i, a, b) for(ll i=a; i<b; i++)
#define ffi For(i, 0, n)
#define ffj For(j, 0, K)
#define ffa ffi ffj
#define s <<" "<<
//#define c <<" : "<<
#define w cout
#define e "\n"
#define pb push_back
#define mp make_pair
#define a first
#define b second
//#define int ll
//500,000,000 operations
const ll MAXN = 100001, INF = 1000000000000000000;
vector<pair<ll, ll> > pts, inp;
ll dp[MAXN], cnt[MAXN], M;


struct Line {
    ll A, B, l, r, ccc;
    Line() {}
    Line (ll a, ll b, ll c, ll d, ll x) {
        A = a; B = b; l = c; r = d, ccc=x;
    }
};

vector<Line> lines;

bool under(ll A1, ll B1, ll c1, ll A2, ll B2, ll c2, ll x) {
    ll y1 = A1*x+B1, y2 = A2*x+B2;
    return (y1 < y2 || (y1 == y2 && c1 <= c2));
}

void addline(ll i) {
    ll y = 0;
    if (i != 0 && inp[i-1].b >= inp[i].a ) y = (inp[i-1].b-inp[i].a+1)*(inp[i-1].b-inp[i].a+1);
    ll A = -2*inp[i].a; ll B = dp[i]-y + inp[i].a*inp[i].a - 2*inp[i].a;
    while (!lines.empty() && under(A, B, cnt[i], lines.back().A, lines.back().B, lines.back().ccc, lines.back().l)) lines.pop_back();
    y = 0;
    if (!lines.empty()) {
        ll A2 = lines.back().A, B2 = lines.back().B;
        if (under(A2, B2, lines.back().ccc, A, B, cnt[i], M-1)) return;
        ll meet = (B2-B)/(A-A2);
        lines.back().r = meet;
        y = meet+1;
    }
    //w<< "Line" s i+1 s ":" s A s B<<e;
    lines.emplace_back(Line(A, B, y, M-1, cnt[i]));
}

pair<ll, ll> query(ll x) {
    ll a = 0, b = lines.size()-1;
    while (a != b) {
        ll mid = (a+b+1)/2;
        if (lines[mid].l > x) b = mid-1;
        else a = mid;
    }
    return mp(lines[a].A*x+lines[a].B, lines[a].ccc);
}

ll calc(ll C) {
    //w<< "testing" s C<<e;
    ll len = inp.size();
    lines.clear();
    For (i, 1, len+1) {
        addline(i-1);
        pair<ll, ll> use = query(inp[i-1].b);
        //w<< "got" s i s ":" s use.a s use.b<<e;
        dp[i] = use.a + inp[i-1].b*inp[i-1].b + 2*inp[i-1].b+1+C;
        cnt[i] = use.b+1;
        //w<< dp[i] s cnt[i]<<e;
    }
    //w<< C s cnt[inp.size()]<<e;
    return cnt[inp.size()];
}

long long take_photos(int n, int m, int k, std::vector<int> r, std::vector<int> c) {
    ffi pts.pb(mp(min(r[i], c[i]), max(r[i], c[i]))); sort(pts.begin(), pts.end());
    M = m;
    for (auto i: pts) {
        if (inp.empty()) inp.pb(i);
        else if (i.b <= inp[inp.size()-1].b) continue; /// don't add it
        else {
            while (!inp.empty() && i.a == inp[inp.size()-1].a && i.b >= inp[inp.size()-1].b) inp.pop_back();
            inp.pb(i);
        }
        //w<< i.a s i.b<<e;
    }
    //w<<"keep"<<e; for (auto i: inp) w<< i.a s i.b<<e;
    /// binary search on C
    ll a = 0, b = m*(ll)m;
    while (a != b) {
        ll mid = (a+b+1)/2;
        if (calc(mid) < k) b = mid-1;
        else a = mid;
    }
    calc(a); ll p1 = cnt[inp.size()]; ll f1 = dp[inp.size()] - a*p1;
    calc(a+1); ll p2 = cnt[inp.size()]; ll f2 = dp[inp.size()] - (a+1)*p2;
    //w<< "C:" s a s ":" s p1 s p2<<e;
    if (p1 == p2) return f1;
    //w<< f1 s f2 s p1 s p2<<e;
    return f1 + (f2-f1)/(p2-p1) * (k-p1);
}

Compilation message

aliens.cpp: In function 'long long int take_photos(int, int, int, std::vector<int>, std::vector<int>)':
aliens.cpp:5:22: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
 #define For(i, a, b) for(ll i=a; i<b; i++)
                      ^
aliens.cpp:6:13: note: in expansion of macro 'For'
 #define ffi For(i, 0, n)
             ^~~
aliens.cpp:83:5: note: in expansion of macro 'ffi'
     ffi pts.pb(mp(min(r[i], c[i]), max(r[i], c[i]))); sort(pts.begin(), pts.end());
     ^~~
aliens.cpp:83:55: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
     ffi pts.pb(mp(min(r[i], c[i]), max(r[i], c[i]))); sort(pts.begin(), pts.end());
                                                       ^~~~
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Correct answer: answer = 4
2 Correct 2 ms 384 KB Correct answer: answer = 4
3 Correct 2 ms 256 KB Correct answer: answer = 4
4 Correct 2 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 3 ms 384 KB Correct answer: answer = 7696
9 Correct 2 ms 384 KB Correct answer: answer = 1
10 Correct 3 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 256 KB Correct answer: answer = 9502
12 Correct 2 ms 384 KB Correct answer: answer = 49
13 Correct 2 ms 256 KB Correct answer: answer = 151
14 Correct 2 ms 256 KB Correct answer: answer = 7550
15 Correct 3 ms 384 KB Correct answer: answer = 7220
16 Correct 2 ms 384 KB Correct answer: answer = 7550
17 Correct 2 ms 384 KB Correct answer: answer = 10000
18 Correct 2 ms 256 KB Correct answer: answer = 10000
19 Correct 2 ms 384 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
# Verdict Execution time Memory Grader output
1 Correct 2 ms 384 KB Correct answer: answer = 1
2 Correct 2 ms 256 KB Correct answer: answer = 4
3 Correct 2 ms 256 KB Correct answer: answer = 1
4 Correct 2 ms 384 KB Correct answer: answer = 5
5 Correct 3 ms 256 KB Correct answer: answer = 41
6 Correct 2 ms 256 KB Correct answer: answer = 71923
7 Correct 2 ms 384 KB Correct answer: answer = 77137
8 Correct 3 ms 384 KB Correct answer: answer = 764
9 Correct 2 ms 384 KB Correct answer: answer = 250000
10 Correct 3 ms 384 KB Correct answer: answer = 500
11 Correct 2 ms 384 KB Correct answer: answer = 32
12 Correct 3 ms 384 KB Correct answer: answer = 130050
13 Correct 3 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 3 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 3 ms 384 KB Correct answer: answer = 4
2 Correct 2 ms 384 KB Correct answer: answer = 4
3 Correct 2 ms 256 KB Correct answer: answer = 4
4 Correct 2 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 3 ms 384 KB Correct answer: answer = 7696
9 Correct 2 ms 384 KB Correct answer: answer = 1
10 Correct 3 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 256 KB Correct answer: answer = 9502
12 Correct 2 ms 384 KB Correct answer: answer = 49
13 Correct 2 ms 256 KB Correct answer: answer = 151
14 Correct 2 ms 256 KB Correct answer: answer = 7550
15 Correct 3 ms 384 KB Correct answer: answer = 7220
16 Correct 2 ms 384 KB Correct answer: answer = 7550
17 Correct 2 ms 384 KB Correct answer: answer = 10000
18 Correct 2 ms 256 KB Correct answer: answer = 10000
19 Correct 2 ms 384 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 384 KB Correct answer: answer = 1
22 Correct 2 ms 256 KB Correct answer: answer = 4
23 Correct 2 ms 256 KB Correct answer: answer = 1
24 Correct 2 ms 384 KB Correct answer: answer = 5
25 Correct 3 ms 256 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 2 ms 384 KB Correct answer: answer = 77137
28 Correct 3 ms 384 KB Correct answer: answer = 764
29 Correct 2 ms 384 KB Correct answer: answer = 250000
30 Correct 3 ms 384 KB Correct answer: answer = 500
31 Correct 2 ms 384 KB Correct answer: answer = 32
32 Correct 3 ms 384 KB Correct answer: answer = 130050
33 Correct 3 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 3 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 256 KB Correct answer: answer = 9
47 Correct 2 ms 384 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 384 KB Correct answer: answer = 71
50 Correct 3 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 3 ms 384 KB Correct answer: answer = 996545
56 Correct 2 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 384 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 2 ms 384 KB Correct answer: answer = 758932
63 Correct 2 ms 384 KB Correct answer: answer = 1000000
64 Correct 2 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 3 ms 384 KB Correct answer: answer = 1000000
69 Correct 3 ms 384 KB Correct answer: answer = 994009
70 Correct 2 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 384 KB Correct answer: answer = 25454
72 Correct 3 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 2 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 3 ms 384 KB Correct answer: answer = 4
2 Correct 2 ms 384 KB Correct answer: answer = 4
3 Correct 2 ms 256 KB Correct answer: answer = 4
4 Correct 2 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 3 ms 384 KB Correct answer: answer = 7696
9 Correct 2 ms 384 KB Correct answer: answer = 1
10 Correct 3 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 256 KB Correct answer: answer = 9502
12 Correct 2 ms 384 KB Correct answer: answer = 49
13 Correct 2 ms 256 KB Correct answer: answer = 151
14 Correct 2 ms 256 KB Correct answer: answer = 7550
15 Correct 3 ms 384 KB Correct answer: answer = 7220
16 Correct 2 ms 384 KB Correct answer: answer = 7550
17 Correct 2 ms 384 KB Correct answer: answer = 10000
18 Correct 2 ms 256 KB Correct answer: answer = 10000
19 Correct 2 ms 384 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 384 KB Correct answer: answer = 1
22 Correct 2 ms 256 KB Correct answer: answer = 4
23 Correct 2 ms 256 KB Correct answer: answer = 1
24 Correct 2 ms 384 KB Correct answer: answer = 5
25 Correct 3 ms 256 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 2 ms 384 KB Correct answer: answer = 77137
28 Correct 3 ms 384 KB Correct answer: answer = 764
29 Correct 2 ms 384 KB Correct answer: answer = 250000
30 Correct 3 ms 384 KB Correct answer: answer = 500
31 Correct 2 ms 384 KB Correct answer: answer = 32
32 Correct 3 ms 384 KB Correct answer: answer = 130050
33 Correct 3 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 3 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 256 KB Correct answer: answer = 9
47 Correct 2 ms 384 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 384 KB Correct answer: answer = 71
50 Correct 3 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 3 ms 384 KB Correct answer: answer = 996545
56 Correct 2 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 384 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 2 ms 384 KB Correct answer: answer = 758932
63 Correct 2 ms 384 KB Correct answer: answer = 1000000
64 Correct 2 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 3 ms 384 KB Correct answer: answer = 1000000
69 Correct 3 ms 384 KB Correct answer: answer = 994009
70 Correct 2 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 384 KB Correct answer: answer = 25454
72 Correct 3 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 2 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 4 ms 512 KB Correct answer: answer = 997864126212
79 Correct 4 ms 640 KB Correct answer: answer = 998608411647
80 Correct 4 ms 544 KB Correct answer: answer = 995265560477
81 Correct 6 ms 768 KB Correct answer: answer = 10125000
82 Correct 10 ms 768 KB Correct answer: answer = 2291668
83 Correct 7 ms 640 KB Correct answer: answer = 42388
84 Correct 6 ms 640 KB Correct answer: answer = 10318
85 Correct 5 ms 640 KB Correct answer: answer = 3416
86 Correct 8 ms 640 KB Correct answer: answer = 331708193881
87 Correct 13 ms 768 KB Correct answer: answer = 2861193756
88 Correct 14 ms 896 KB Correct answer: answer = 114646930
89 Correct 9 ms 768 KB Correct answer: answer = 9280921
90 Correct 10 ms 896 KB Correct answer: answer = 999984053400
91 Correct 11 ms 768 KB Correct answer: answer = 750935949134
92 Correct 5 ms 512 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 624 KB Correct answer: answer = 998762383161
94 Correct 12 ms 676 KB Correct answer: answer = 23017412908
95 Correct 4 ms 508 KB Correct answer: answer = 728143410622
96 Correct 3 ms 512 KB Correct answer: answer = 2
97 Correct 12 ms 768 KB Correct answer: answer = 1824916
98 Correct 11 ms 768 KB Correct answer: answer = 10680029
99 Correct 12 ms 896 KB Correct answer: answer = 18351700
100 Correct 6 ms 640 KB Correct answer: answer = 16040026
101 Correct 4 ms 640 KB Correct answer: answer = 253968628325
102 Correct 6 ms 640 KB Correct answer: answer = 10267
103 Correct 13 ms 1024 KB Correct answer: answer = 2582408
104 Correct 5 ms 640 KB Correct answer: answer = 78024964781
105 Correct 3 ms 640 KB Correct answer: answer = 9866346457
106 Correct 6 ms 640 KB Correct answer: answer = 3327720949
107 Correct 5 ms 640 KB Correct answer: answer = 86064128360
108 Correct 4 ms 640 KB Correct answer: answer = 12698259150
109 Correct 10 ms 868 KB Correct answer: answer = 1185259288
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Correct answer: answer = 4
2 Correct 2 ms 384 KB Correct answer: answer = 4
3 Correct 2 ms 256 KB Correct answer: answer = 4
4 Correct 2 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 3 ms 384 KB Correct answer: answer = 7696
9 Correct 2 ms 384 KB Correct answer: answer = 1
10 Correct 3 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 256 KB Correct answer: answer = 9502
12 Correct 2 ms 384 KB Correct answer: answer = 49
13 Correct 2 ms 256 KB Correct answer: answer = 151
14 Correct 2 ms 256 KB Correct answer: answer = 7550
15 Correct 3 ms 384 KB Correct answer: answer = 7220
16 Correct 2 ms 384 KB Correct answer: answer = 7550
17 Correct 2 ms 384 KB Correct answer: answer = 10000
18 Correct 2 ms 256 KB Correct answer: answer = 10000
19 Correct 2 ms 384 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 384 KB Correct answer: answer = 1
22 Correct 2 ms 256 KB Correct answer: answer = 4
23 Correct 2 ms 256 KB Correct answer: answer = 1
24 Correct 2 ms 384 KB Correct answer: answer = 5
25 Correct 3 ms 256 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 2 ms 384 KB Correct answer: answer = 77137
28 Correct 3 ms 384 KB Correct answer: answer = 764
29 Correct 2 ms 384 KB Correct answer: answer = 250000
30 Correct 3 ms 384 KB Correct answer: answer = 500
31 Correct 2 ms 384 KB Correct answer: answer = 32
32 Correct 3 ms 384 KB Correct answer: answer = 130050
33 Correct 3 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 3 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 256 KB Correct answer: answer = 9
47 Correct 2 ms 384 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 384 KB Correct answer: answer = 71
50 Correct 3 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 3 ms 384 KB Correct answer: answer = 996545
56 Correct 2 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 384 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 2 ms 384 KB Correct answer: answer = 758932
63 Correct 2 ms 384 KB Correct answer: answer = 1000000
64 Correct 2 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 3 ms 384 KB Correct answer: answer = 1000000
69 Correct 3 ms 384 KB Correct answer: answer = 994009
70 Correct 2 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 384 KB Correct answer: answer = 25454
72 Correct 3 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 2 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 4 ms 512 KB Correct answer: answer = 997864126212
79 Correct 4 ms 640 KB Correct answer: answer = 998608411647
80 Correct 4 ms 544 KB Correct answer: answer = 995265560477
81 Correct 6 ms 768 KB Correct answer: answer = 10125000
82 Correct 10 ms 768 KB Correct answer: answer = 2291668
83 Correct 7 ms 640 KB Correct answer: answer = 42388
84 Correct 6 ms 640 KB Correct answer: answer = 10318
85 Correct 5 ms 640 KB Correct answer: answer = 3416
86 Correct 8 ms 640 KB Correct answer: answer = 331708193881
87 Correct 13 ms 768 KB Correct answer: answer = 2861193756
88 Correct 14 ms 896 KB Correct answer: answer = 114646930
89 Correct 9 ms 768 KB Correct answer: answer = 9280921
90 Correct 10 ms 896 KB Correct answer: answer = 999984053400
91 Correct 11 ms 768 KB Correct answer: answer = 750935949134
92 Correct 5 ms 512 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 624 KB Correct answer: answer = 998762383161
94 Correct 12 ms 676 KB Correct answer: answer = 23017412908
95 Correct 4 ms 508 KB Correct answer: answer = 728143410622
96 Correct 3 ms 512 KB Correct answer: answer = 2
97 Correct 12 ms 768 KB Correct answer: answer = 1824916
98 Correct 11 ms 768 KB Correct answer: answer = 10680029
99 Correct 12 ms 896 KB Correct answer: answer = 18351700
100 Correct 6 ms 640 KB Correct answer: answer = 16040026
101 Correct 4 ms 640 KB Correct answer: answer = 253968628325
102 Correct 6 ms 640 KB Correct answer: answer = 10267
103 Correct 13 ms 1024 KB Correct answer: answer = 2582408
104 Correct 5 ms 640 KB Correct answer: answer = 78024964781
105 Correct 3 ms 640 KB Correct answer: answer = 9866346457
106 Correct 6 ms 640 KB Correct answer: answer = 3327720949
107 Correct 5 ms 640 KB Correct answer: answer = 86064128360
108 Correct 4 ms 640 KB Correct answer: answer = 12698259150
109 Correct 10 ms 868 KB Correct answer: answer = 1185259288
110 Correct 27 ms 2936 KB Correct answer: answer = 999889968863
111 Correct 19 ms 2936 KB Correct answer: answer = 999861384931
112 Correct 25 ms 2936 KB Correct answer: answer = 999811809929
113 Correct 22 ms 2936 KB Correct answer: answer = 999869756441
114 Correct 45 ms 4204 KB Correct answer: answer = 1700000000
115 Correct 152 ms 6016 KB Correct answer: answer = 131666670
116 Correct 30 ms 2012 KB Correct answer: answer = 89478486
117 Correct 35 ms 2012 KB Correct answer: answer = 4971040
118 Correct 36 ms 2012 KB Correct answer: answer = 2711494
119 Correct 134 ms 5996 KB Correct answer: answer = 25252530
120 Correct 117 ms 5996 KB Correct answer: answer = 62500000
121 Correct 76 ms 4204 KB Correct answer: answer = 333175097780
122 Correct 131 ms 4328 KB Correct answer: answer = 33121180179
123 Correct 130 ms 4332 KB Correct answer: answer = 9802314015
124 Correct 127 ms 5988 KB Correct answer: answer = 32567551
125 Correct 158 ms 6056 KB Correct answer: answer = 997525000000
126 Correct 117 ms 4204 KB Correct answer: answer = 752723538884
127 Correct 15 ms 2936 KB Correct answer: answer = 1000000000000
128 Correct 23 ms 2936 KB Correct answer: answer = 999978000121
129 Correct 20 ms 2936 KB Correct answer: answer = 745986144735
130 Correct 11 ms 2424 KB Correct answer: answer = 2
131 Correct 141 ms 5996 KB Correct answer: answer = 277966670
132 Correct 44 ms 4204 KB Correct answer: answer = 2500900082
133 Correct 33 ms 3064 KB Correct answer: answer = 301248349636
134 Correct 78 ms 3184 KB Correct answer: answer = 14118891
135 Correct 19 ms 2936 KB Correct answer: answer = 14384977265
136 Correct 20 ms 2936 KB Correct answer: answer = 3681368330
137 Correct 20 ms 2936 KB Correct answer: answer = 2720316816
# Verdict Execution time Memory Grader output
1 Correct 3 ms 384 KB Correct answer: answer = 4
2 Correct 2 ms 384 KB Correct answer: answer = 4
3 Correct 2 ms 256 KB Correct answer: answer = 4
4 Correct 2 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 3 ms 384 KB Correct answer: answer = 7696
9 Correct 2 ms 384 KB Correct answer: answer = 1
10 Correct 3 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 256 KB Correct answer: answer = 9502
12 Correct 2 ms 384 KB Correct answer: answer = 49
13 Correct 2 ms 256 KB Correct answer: answer = 151
14 Correct 2 ms 256 KB Correct answer: answer = 7550
15 Correct 3 ms 384 KB Correct answer: answer = 7220
16 Correct 2 ms 384 KB Correct answer: answer = 7550
17 Correct 2 ms 384 KB Correct answer: answer = 10000
18 Correct 2 ms 256 KB Correct answer: answer = 10000
19 Correct 2 ms 384 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 384 KB Correct answer: answer = 1
22 Correct 2 ms 256 KB Correct answer: answer = 4
23 Correct 2 ms 256 KB Correct answer: answer = 1
24 Correct 2 ms 384 KB Correct answer: answer = 5
25 Correct 3 ms 256 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 2 ms 384 KB Correct answer: answer = 77137
28 Correct 3 ms 384 KB Correct answer: answer = 764
29 Correct 2 ms 384 KB Correct answer: answer = 250000
30 Correct 3 ms 384 KB Correct answer: answer = 500
31 Correct 2 ms 384 KB Correct answer: answer = 32
32 Correct 3 ms 384 KB Correct answer: answer = 130050
33 Correct 3 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 3 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 256 KB Correct answer: answer = 9
47 Correct 2 ms 384 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 384 KB Correct answer: answer = 71
50 Correct 3 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 3 ms 384 KB Correct answer: answer = 996545
56 Correct 2 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 384 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 2 ms 384 KB Correct answer: answer = 758932
63 Correct 2 ms 384 KB Correct answer: answer = 1000000
64 Correct 2 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 3 ms 384 KB Correct answer: answer = 1000000
69 Correct 3 ms 384 KB Correct answer: answer = 994009
70 Correct 2 ms 384 KB Correct answer: answer = 59315
71 Correct 2 ms 384 KB Correct answer: answer = 25454
72 Correct 3 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 2 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 4 ms 512 KB Correct answer: answer = 997864126212
79 Correct 4 ms 640 KB Correct answer: answer = 998608411647
80 Correct 4 ms 544 KB Correct answer: answer = 995265560477
81 Correct 6 ms 768 KB Correct answer: answer = 10125000
82 Correct 10 ms 768 KB Correct answer: answer = 2291668
83 Correct 7 ms 640 KB Correct answer: answer = 42388
84 Correct 6 ms 640 KB Correct answer: answer = 10318
85 Correct 5 ms 640 KB Correct answer: answer = 3416
86 Correct 8 ms 640 KB Correct answer: answer = 331708193881
87 Correct 13 ms 768 KB Correct answer: answer = 2861193756
88 Correct 14 ms 896 KB Correct answer: answer = 114646930
89 Correct 9 ms 768 KB Correct answer: answer = 9280921
90 Correct 10 ms 896 KB Correct answer: answer = 999984053400
91 Correct 11 ms 768 KB Correct answer: answer = 750935949134
92 Correct 5 ms 512 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 624 KB Correct answer: answer = 998762383161
94 Correct 12 ms 676 KB Correct answer: answer = 23017412908
95 Correct 4 ms 508 KB Correct answer: answer = 728143410622
96 Correct 3 ms 512 KB Correct answer: answer = 2
97 Correct 12 ms 768 KB Correct answer: answer = 1824916
98 Correct 11 ms 768 KB Correct answer: answer = 10680029
99 Correct 12 ms 896 KB Correct answer: answer = 18351700
100 Correct 6 ms 640 KB Correct answer: answer = 16040026
101 Correct 4 ms 640 KB Correct answer: answer = 253968628325
102 Correct 6 ms 640 KB Correct answer: answer = 10267
103 Correct 13 ms 1024 KB Correct answer: answer = 2582408
104 Correct 5 ms 640 KB Correct answer: answer = 78024964781
105 Correct 3 ms 640 KB Correct answer: answer = 9866346457
106 Correct 6 ms 640 KB Correct answer: answer = 3327720949
107 Correct 5 ms 640 KB Correct answer: answer = 86064128360
108 Correct 4 ms 640 KB Correct answer: answer = 12698259150
109 Correct 10 ms 868 KB Correct answer: answer = 1185259288
110 Correct 27 ms 2936 KB Correct answer: answer = 999889968863
111 Correct 19 ms 2936 KB Correct answer: answer = 999861384931
112 Correct 25 ms 2936 KB Correct answer: answer = 999811809929
113 Correct 22 ms 2936 KB Correct answer: answer = 999869756441
114 Correct 45 ms 4204 KB Correct answer: answer = 1700000000
115 Correct 152 ms 6016 KB Correct answer: answer = 131666670
116 Correct 30 ms 2012 KB Correct answer: answer = 89478486
117 Correct 35 ms 2012 KB Correct answer: answer = 4971040
118 Correct 36 ms 2012 KB Correct answer: answer = 2711494
119 Correct 134 ms 5996 KB Correct answer: answer = 25252530
120 Correct 117 ms 5996 KB Correct answer: answer = 62500000
121 Correct 76 ms 4204 KB Correct answer: answer = 333175097780
122 Correct 131 ms 4328 KB Correct answer: answer = 33121180179
123 Correct 130 ms 4332 KB Correct answer: answer = 9802314015
124 Correct 127 ms 5988 KB Correct answer: answer = 32567551
125 Correct 158 ms 6056 KB Correct answer: answer = 997525000000
126 Correct 117 ms 4204 KB Correct answer: answer = 752723538884
127 Correct 15 ms 2936 KB Correct answer: answer = 1000000000000
128 Correct 23 ms 2936 KB Correct answer: answer = 999978000121
129 Correct 20 ms 2936 KB Correct answer: answer = 745986144735
130 Correct 11 ms 2424 KB Correct answer: answer = 2
131 Correct 141 ms 5996 KB Correct answer: answer = 277966670
132 Correct 44 ms 4204 KB Correct answer: answer = 2500900082
133 Correct 33 ms 3064 KB Correct answer: answer = 301248349636
134 Correct 78 ms 3184 KB Correct answer: answer = 14118891
135 Correct 19 ms 2936 KB Correct answer: answer = 14384977265
136 Correct 20 ms 2936 KB Correct answer: answer = 3681368330
137 Correct 20 ms 2936 KB Correct answer: answer = 2720316816
138 Correct 37 ms 5484 KB Correct answer: answer = 999976000144
139 Correct 37 ms 5612 KB Correct answer: answer = 999856102410
140 Correct 41 ms 5584 KB Correct answer: answer = 999958401531
141 Correct 45 ms 5356 KB Correct answer: answer = 999769649944
142 Correct 38 ms 5620 KB Correct answer: answer = 999874525918
143 Correct 136 ms 9064 KB Correct answer: answer = 6050000000
144 Correct 281 ms 11620 KB Correct answer: answer = 1112500000
145 Correct 42 ms 5364 KB Correct answer: answer = 4294967296
146 Correct 160 ms 7148 KB Correct answer: answer = 87652406
147 Correct 155 ms 8424 KB Correct answer: answer = 6297664
148 Correct 162 ms 8568 KB Correct answer: answer = 196612
149 Correct 249 ms 11740 KB Correct answer: answer = 15015100
150 Correct 249 ms 11620 KB Correct answer: answer = 25000000
151 Correct 149 ms 7912 KB Correct answer: answer = 333230209550
152 Correct 297 ms 8340 KB Correct answer: answer = 917123769
153 Correct 291 ms 14308 KB Correct answer: answer = 95162
154 Correct 290 ms 11624 KB Correct answer: answer = 382616191
155 Correct 285 ms 11620 KB Correct answer: answer = 990033333400
156 Correct 288 ms 14308 KB Correct answer: answer = 990000100000
157 Correct 241 ms 11236 KB Correct answer: answer = 749998188180
158 Correct 30 ms 5356 KB Correct answer: answer = 1000000000000
159 Correct 37 ms 5484 KB Correct answer: answer = 999988000036
160 Correct 42 ms 5356 KB Correct answer: answer = 744929274393
161 Correct 20 ms 4468 KB Correct answer: answer = 2
162 Correct 281 ms 14176 KB Correct answer: answer = 1300024
163 Correct 226 ms 11620 KB Correct answer: answer = 5000700010
164 Correct 70 ms 5480 KB Correct answer: answer = 354997100800
165 Correct 148 ms 5996 KB Correct answer: answer = 257000
166 Correct 161 ms 7400 KB Correct answer: answer = 3765323
167 Correct 142 ms 7272 KB Correct answer: answer = 1525903
168 Correct 42 ms 5612 KB Correct answer: answer = 67618137730
169 Correct 41 ms 5484 KB Correct answer: answer = 12656680171
170 Correct 44 ms 5396 KB Correct answer: answer = 579831736
171 Correct 119 ms 7288 KB Correct answer: answer = 23605611
172 Correct 44 ms 5364 KB Correct answer: answer = 7052481200
173 Correct 57 ms 6376 KB Correct answer: answer = 1314039500
174 Correct 95 ms 7660 KB Correct answer: answer = 302484000
175 Correct 220 ms 9368 KB Correct answer: answer = 52348480