Submission #136343

# Submission time Handle Problem Language Result Execution time Memory
136343 2019-07-25T07:19:43 Z MAMBA Aliens (IOI16_aliens) C++17
100 / 100
312 ms 6416 KB
#include "aliens.h"
#include <bits/stdc++.h>

using namespace std;

#define rep(i, j, k) for (int i = j; i < (int)k; i++)
#define pb push_back
#define all(x) x.begin(), x.end()

typedef long long ll;
typedef vector<int> vi;
typedef pair<int, long long> pil;
typedef pair<ll, ll> pll;

#define BB dq[dq.size() - 2]

struct Line {
  ll cf, b, z;
  Line(ll cf_, ll b_, ll z_) {
    cf = cf_;
    b = b_;
    z = z_;
  }
};

inline pll inter(Line a, Line b) { return pll(a.b - b.b, b.cf - a.cf); }

inline bool cmp(pll a, pll b) {
  if (a.second < 0) {
    a.second *= -1;
    a.first *= -1;
  }
  if (b.second < 0) {
    b.second *= -1;
    b.first *= -1;
  }

  return a.first * b.second < a.second * b.first;
}

inline bool cmp(pll a, ll b) { return cmp(a, pll(b, 1)); }

inline bool equ(pll a, ll b) {
  return !cmp(a, pll(b, 1)) && !cmp(pll(b, 1), a);
}

ll take_photos(int n, int m, int k, std::vector<int> r, std::vector<int> c) {
  vi ind;
  int N = 0;

  {
    rep(i, 0, n) {
      if (r[i] > c[i]) swap(r[i], c[i]);
      c[i]++;
    }

    vi local(n);
    iota(all(local), 0);
    sort(all(local), [&](int a, int b) {
      if (r[a] != r[b]) return r[a] < r[b];
      return c[a] > c[b];
    });

    int mx = -1;
    rep(i, 0, n) if (c[local[i]] > mx) {
      ind.pb(local[i]);
      mx = c[local[i]];
    }
    N = ind.size();
    ind.pb(n);
    r.push_back(1e9);

    if (k == 1) {
      ll dist = c[ind[N - 1]] - r[ind[0]];
      return dist * dist;
    }
  }

  auto solve = [&](ll Cost) -> pil {
    vector<pil> dp(N + 1);
    deque<Line> dq;
    dp[N] = pil(0, 0);

    auto push = [&](int id) {
      int pos = ind[id];
      int pre = ind[id - 1];

      ll Rj1 = c[pre];
      ll Li = r[pos];

      Line ln(
          Rj1,
          dp[id].second + Rj1 * Rj1 - (Li < Rj1 ? (Rj1 - Li) * (Rj1 - Li) : 0),
          dp[id].first);

      while (dq.size() > 1 && cmp(inter(BB, ln), inter(BB, dq.back())))
        dq.pop_back();
      dq.pb(ln);
      return;
    };

    auto relax = [&](int id) {
      ll pn = -2ll * r[ind[id]];
      while (dq.size() > 1 && cmp(inter(dq[0], dq[1]), pn)) dq.pop_front();
      if (dq.size() > 2 && equ(inter(dq[0], dq[1]), pn) &&
          equ(inter(dq[1], dq[2]), pn)) {
        if (dq[0].z < dq[1].z) swap(dq[0], dq[1]);
        dq.pop_front();
      }
      return;
    };

    for (int i = N - 1; ~i; i--) {
      push(i + 1);
      relax(i);
      int me = ind[i];
      dp[i] = pil(dq[0].z + 1, (1ll * r[me] * r[me]) - 2ll * r[me] * dq[0].cf +
                                   dq[0].b + Cost);
      if (dq.size() > 1) {
        pil w(dq[1].z + 1,
              (1ll * r[me] * r[me]) - 2ll * r[me] * dq[1].cf + dq[1].b + Cost);
        if (w.second == dp[i].second && w.first < dp[i].first) dp[i] = w;
      }
    }

    return dp[0];
  };

  ll lo = 1ll * m * m + 10, hi = -1;

  while (lo - 1 != hi) {
    ll mid = lo + hi >> 1;
    if (k <= solve(mid).first)
      hi = mid;
    else
      lo = mid;
  }

  auto result = solve(lo);
  return result.second - k * lo;
}

Compilation message

aliens.cpp: In function 'll take_photos(int, int, int, std::vector<int>, std::vector<int>)':
aliens.cpp:132:17: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
     ll mid = lo + hi >> 1;
              ~~~^~~~
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Correct answer: answer = 4
2 Correct 2 ms 376 KB Correct answer: answer = 4
3 Correct 2 ms 376 KB Correct answer: answer = 4
4 Correct 2 ms 256 KB Correct answer: answer = 12
5 Correct 2 ms 376 KB Correct answer: answer = 52
6 Correct 2 ms 376 KB Correct answer: answer = 210
7 Correct 2 ms 376 KB Correct answer: answer = 88
8 Correct 2 ms 256 KB Correct answer: answer = 7696
9 Correct 2 ms 376 KB Correct answer: answer = 1
10 Correct 2 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 376 KB Correct answer: answer = 9502
12 Correct 2 ms 376 KB Correct answer: answer = 49
13 Correct 2 ms 376 KB Correct answer: answer = 151
14 Correct 2 ms 376 KB Correct answer: answer = 7550
15 Correct 2 ms 376 KB Correct answer: answer = 7220
16 Correct 2 ms 376 KB Correct answer: answer = 7550
17 Correct 2 ms 256 KB Correct answer: answer = 10000
18 Correct 2 ms 376 KB Correct answer: answer = 10000
19 Correct 2 ms 376 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 256 KB Correct answer: answer = 1
2 Correct 2 ms 256 KB Correct answer: answer = 4
3 Correct 2 ms 376 KB Correct answer: answer = 1
4 Correct 2 ms 256 KB Correct answer: answer = 5
5 Correct 2 ms 256 KB Correct answer: answer = 41
6 Correct 2 ms 256 KB Correct answer: answer = 71923
7 Correct 2 ms 376 KB Correct answer: answer = 77137
8 Correct 3 ms 376 KB Correct answer: answer = 764
9 Correct 2 ms 376 KB Correct answer: answer = 250000
10 Correct 3 ms 376 KB Correct answer: answer = 500
11 Correct 2 ms 376 KB Correct answer: answer = 32
12 Correct 2 ms 376 KB Correct answer: answer = 130050
13 Correct 3 ms 376 KB Correct answer: answer = 5110
14 Correct 2 ms 376 KB Correct answer: answer = 2626
15 Correct 3 ms 256 KB Correct answer: answer = 796
16 Correct 3 ms 376 KB Correct answer: answer = 7580
17 Correct 3 ms 380 KB Correct answer: answer = 1904
18 Correct 2 ms 376 KB Correct answer: answer = 996004
19 Correct 2 ms 376 KB Correct answer: answer = 38817
20 Correct 3 ms 348 KB Correct answer: answer = 4096
21 Correct 2 ms 256 KB Correct answer: answer = 1
22 Correct 2 ms 256 KB Correct answer: answer = 1
23 Correct 3 ms 376 KB Correct answer: answer = 2040
24 Correct 2 ms 376 KB Correct answer: answer = 2
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Correct answer: answer = 4
2 Correct 2 ms 376 KB Correct answer: answer = 4
3 Correct 2 ms 376 KB Correct answer: answer = 4
4 Correct 2 ms 256 KB Correct answer: answer = 12
5 Correct 2 ms 376 KB Correct answer: answer = 52
6 Correct 2 ms 376 KB Correct answer: answer = 210
7 Correct 2 ms 376 KB Correct answer: answer = 88
8 Correct 2 ms 256 KB Correct answer: answer = 7696
9 Correct 2 ms 376 KB Correct answer: answer = 1
10 Correct 2 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 376 KB Correct answer: answer = 9502
12 Correct 2 ms 376 KB Correct answer: answer = 49
13 Correct 2 ms 376 KB Correct answer: answer = 151
14 Correct 2 ms 376 KB Correct answer: answer = 7550
15 Correct 2 ms 376 KB Correct answer: answer = 7220
16 Correct 2 ms 376 KB Correct answer: answer = 7550
17 Correct 2 ms 256 KB Correct answer: answer = 10000
18 Correct 2 ms 376 KB Correct answer: answer = 10000
19 Correct 2 ms 376 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 256 KB Correct answer: answer = 1
22 Correct 2 ms 256 KB Correct answer: answer = 4
23 Correct 2 ms 376 KB Correct answer: answer = 1
24 Correct 2 ms 256 KB Correct answer: answer = 5
25 Correct 2 ms 256 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 2 ms 376 KB Correct answer: answer = 77137
28 Correct 3 ms 376 KB Correct answer: answer = 764
29 Correct 2 ms 376 KB Correct answer: answer = 250000
30 Correct 3 ms 376 KB Correct answer: answer = 500
31 Correct 2 ms 376 KB Correct answer: answer = 32
32 Correct 2 ms 376 KB Correct answer: answer = 130050
33 Correct 3 ms 376 KB Correct answer: answer = 5110
34 Correct 2 ms 376 KB Correct answer: answer = 2626
35 Correct 3 ms 256 KB Correct answer: answer = 796
36 Correct 3 ms 376 KB Correct answer: answer = 7580
37 Correct 3 ms 380 KB Correct answer: answer = 1904
38 Correct 2 ms 376 KB Correct answer: answer = 996004
39 Correct 2 ms 376 KB Correct answer: answer = 38817
40 Correct 3 ms 348 KB Correct answer: answer = 4096
41 Correct 2 ms 256 KB Correct answer: answer = 1
42 Correct 2 ms 256 KB Correct answer: answer = 1
43 Correct 3 ms 376 KB Correct answer: answer = 2040
44 Correct 2 ms 376 KB Correct answer: answer = 2
45 Correct 2 ms 376 KB Correct answer: answer = 4
46 Correct 2 ms 256 KB Correct answer: answer = 9
47 Correct 2 ms 380 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 376 KB Correct answer: answer = 71
50 Correct 2 ms 352 KB Correct answer: answer = 77
51 Correct 2 ms 376 KB Correct answer: answer = 400
52 Correct 2 ms 376 KB Correct answer: answer = 996004
53 Correct 2 ms 376 KB Correct answer: answer = 997310
54 Correct 2 ms 376 KB Correct answer: answer = 990781
55 Correct 2 ms 376 KB Correct answer: answer = 996545
56 Correct 2 ms 376 KB Correct answer: answer = 484
57 Correct 2 ms 376 KB Correct answer: answer = 484
58 Correct 3 ms 376 KB Correct answer: answer = 63501
59 Correct 3 ms 376 KB Correct answer: answer = 323501
60 Correct 3 ms 376 KB Correct answer: answer = 752500
61 Correct 2 ms 376 KB Correct answer: answer = 761480
62 Correct 2 ms 256 KB Correct answer: answer = 758932
63 Correct 2 ms 256 KB Correct answer: answer = 1000000
64 Correct 3 ms 376 KB Correct answer: answer = 750500
65 Correct 2 ms 252 KB Correct answer: answer = 1000000
66 Correct 2 ms 256 KB Correct answer: answer = 250000
67 Correct 2 ms 256 KB Correct answer: answer = 250000
68 Correct 2 ms 376 KB Correct answer: answer = 1000000
69 Correct 2 ms 376 KB Correct answer: answer = 994009
70 Correct 2 ms 376 KB Correct answer: answer = 59315
71 Correct 3 ms 256 KB Correct answer: answer = 25454
72 Correct 3 ms 252 KB Correct answer: answer = 1504
73 Correct 2 ms 256 KB Correct answer: answer = 37486
74 Correct 2 ms 376 KB Correct answer: answer = 4284
75 Correct 2 ms 376 KB Correct answer: answer = 158008
76 Correct 2 ms 376 KB Correct answer: answer = 51860
77 Correct 3 ms 376 KB Correct answer: answer = 12985
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Correct answer: answer = 4
2 Correct 2 ms 376 KB Correct answer: answer = 4
3 Correct 2 ms 376 KB Correct answer: answer = 4
4 Correct 2 ms 256 KB Correct answer: answer = 12
5 Correct 2 ms 376 KB Correct answer: answer = 52
6 Correct 2 ms 376 KB Correct answer: answer = 210
7 Correct 2 ms 376 KB Correct answer: answer = 88
8 Correct 2 ms 256 KB Correct answer: answer = 7696
9 Correct 2 ms 376 KB Correct answer: answer = 1
10 Correct 2 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 376 KB Correct answer: answer = 9502
12 Correct 2 ms 376 KB Correct answer: answer = 49
13 Correct 2 ms 376 KB Correct answer: answer = 151
14 Correct 2 ms 376 KB Correct answer: answer = 7550
15 Correct 2 ms 376 KB Correct answer: answer = 7220
16 Correct 2 ms 376 KB Correct answer: answer = 7550
17 Correct 2 ms 256 KB Correct answer: answer = 10000
18 Correct 2 ms 376 KB Correct answer: answer = 10000
19 Correct 2 ms 376 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 256 KB Correct answer: answer = 1
22 Correct 2 ms 256 KB Correct answer: answer = 4
23 Correct 2 ms 376 KB Correct answer: answer = 1
24 Correct 2 ms 256 KB Correct answer: answer = 5
25 Correct 2 ms 256 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 2 ms 376 KB Correct answer: answer = 77137
28 Correct 3 ms 376 KB Correct answer: answer = 764
29 Correct 2 ms 376 KB Correct answer: answer = 250000
30 Correct 3 ms 376 KB Correct answer: answer = 500
31 Correct 2 ms 376 KB Correct answer: answer = 32
32 Correct 2 ms 376 KB Correct answer: answer = 130050
33 Correct 3 ms 376 KB Correct answer: answer = 5110
34 Correct 2 ms 376 KB Correct answer: answer = 2626
35 Correct 3 ms 256 KB Correct answer: answer = 796
36 Correct 3 ms 376 KB Correct answer: answer = 7580
37 Correct 3 ms 380 KB Correct answer: answer = 1904
38 Correct 2 ms 376 KB Correct answer: answer = 996004
39 Correct 2 ms 376 KB Correct answer: answer = 38817
40 Correct 3 ms 348 KB Correct answer: answer = 4096
41 Correct 2 ms 256 KB Correct answer: answer = 1
42 Correct 2 ms 256 KB Correct answer: answer = 1
43 Correct 3 ms 376 KB Correct answer: answer = 2040
44 Correct 2 ms 376 KB Correct answer: answer = 2
45 Correct 2 ms 376 KB Correct answer: answer = 4
46 Correct 2 ms 256 KB Correct answer: answer = 9
47 Correct 2 ms 380 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 376 KB Correct answer: answer = 71
50 Correct 2 ms 352 KB Correct answer: answer = 77
51 Correct 2 ms 376 KB Correct answer: answer = 400
52 Correct 2 ms 376 KB Correct answer: answer = 996004
53 Correct 2 ms 376 KB Correct answer: answer = 997310
54 Correct 2 ms 376 KB Correct answer: answer = 990781
55 Correct 2 ms 376 KB Correct answer: answer = 996545
56 Correct 2 ms 376 KB Correct answer: answer = 484
57 Correct 2 ms 376 KB Correct answer: answer = 484
58 Correct 3 ms 376 KB Correct answer: answer = 63501
59 Correct 3 ms 376 KB Correct answer: answer = 323501
60 Correct 3 ms 376 KB Correct answer: answer = 752500
61 Correct 2 ms 376 KB Correct answer: answer = 761480
62 Correct 2 ms 256 KB Correct answer: answer = 758932
63 Correct 2 ms 256 KB Correct answer: answer = 1000000
64 Correct 3 ms 376 KB Correct answer: answer = 750500
65 Correct 2 ms 252 KB Correct answer: answer = 1000000
66 Correct 2 ms 256 KB Correct answer: answer = 250000
67 Correct 2 ms 256 KB Correct answer: answer = 250000
68 Correct 2 ms 376 KB Correct answer: answer = 1000000
69 Correct 2 ms 376 KB Correct answer: answer = 994009
70 Correct 2 ms 376 KB Correct answer: answer = 59315
71 Correct 3 ms 256 KB Correct answer: answer = 25454
72 Correct 3 ms 252 KB Correct answer: answer = 1504
73 Correct 2 ms 256 KB Correct answer: answer = 37486
74 Correct 2 ms 376 KB Correct answer: answer = 4284
75 Correct 2 ms 376 KB Correct answer: answer = 158008
76 Correct 2 ms 376 KB Correct answer: answer = 51860
77 Correct 3 ms 376 KB Correct answer: answer = 12985
78 Correct 4 ms 504 KB Correct answer: answer = 997864126212
79 Correct 4 ms 504 KB Correct answer: answer = 998608411647
80 Correct 4 ms 504 KB Correct answer: answer = 995265560477
81 Correct 7 ms 632 KB Correct answer: answer = 10125000
82 Correct 8 ms 632 KB Correct answer: answer = 2291668
83 Correct 5 ms 504 KB Correct answer: answer = 42388
84 Correct 5 ms 488 KB Correct answer: answer = 10318
85 Correct 5 ms 376 KB Correct answer: answer = 3416
86 Correct 12 ms 628 KB Correct answer: answer = 331708193881
87 Correct 12 ms 632 KB Correct answer: answer = 2861193756
88 Correct 12 ms 608 KB Correct answer: answer = 114646930
89 Correct 8 ms 588 KB Correct answer: answer = 9280921
90 Correct 10 ms 632 KB Correct answer: answer = 999984053400
91 Correct 12 ms 632 KB Correct answer: answer = 750935949134
92 Correct 3 ms 376 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 504 KB Correct answer: answer = 998762383161
94 Correct 12 ms 632 KB Correct answer: answer = 23017412908
95 Correct 4 ms 504 KB Correct answer: answer = 728143410622
96 Correct 3 ms 376 KB Correct answer: answer = 2
97 Correct 10 ms 632 KB Correct answer: answer = 1824916
98 Correct 10 ms 504 KB Correct answer: answer = 10680029
99 Correct 10 ms 632 KB Correct answer: answer = 18351700
100 Correct 9 ms 504 KB Correct answer: answer = 16040026
101 Correct 5 ms 504 KB Correct answer: answer = 253968628325
102 Correct 6 ms 504 KB Correct answer: answer = 10267
103 Correct 11 ms 632 KB Correct answer: answer = 2582408
104 Correct 4 ms 504 KB Correct answer: answer = 78024964781
105 Correct 4 ms 504 KB Correct answer: answer = 9866346457
106 Correct 5 ms 504 KB Correct answer: answer = 3327720949
107 Correct 4 ms 504 KB Correct answer: answer = 86064128360
108 Correct 5 ms 504 KB Correct answer: answer = 12698259150
109 Correct 9 ms 504 KB Correct answer: answer = 1185259288
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Correct answer: answer = 4
2 Correct 2 ms 376 KB Correct answer: answer = 4
3 Correct 2 ms 376 KB Correct answer: answer = 4
4 Correct 2 ms 256 KB Correct answer: answer = 12
5 Correct 2 ms 376 KB Correct answer: answer = 52
6 Correct 2 ms 376 KB Correct answer: answer = 210
7 Correct 2 ms 376 KB Correct answer: answer = 88
8 Correct 2 ms 256 KB Correct answer: answer = 7696
9 Correct 2 ms 376 KB Correct answer: answer = 1
10 Correct 2 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 376 KB Correct answer: answer = 9502
12 Correct 2 ms 376 KB Correct answer: answer = 49
13 Correct 2 ms 376 KB Correct answer: answer = 151
14 Correct 2 ms 376 KB Correct answer: answer = 7550
15 Correct 2 ms 376 KB Correct answer: answer = 7220
16 Correct 2 ms 376 KB Correct answer: answer = 7550
17 Correct 2 ms 256 KB Correct answer: answer = 10000
18 Correct 2 ms 376 KB Correct answer: answer = 10000
19 Correct 2 ms 376 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 256 KB Correct answer: answer = 1
22 Correct 2 ms 256 KB Correct answer: answer = 4
23 Correct 2 ms 376 KB Correct answer: answer = 1
24 Correct 2 ms 256 KB Correct answer: answer = 5
25 Correct 2 ms 256 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 2 ms 376 KB Correct answer: answer = 77137
28 Correct 3 ms 376 KB Correct answer: answer = 764
29 Correct 2 ms 376 KB Correct answer: answer = 250000
30 Correct 3 ms 376 KB Correct answer: answer = 500
31 Correct 2 ms 376 KB Correct answer: answer = 32
32 Correct 2 ms 376 KB Correct answer: answer = 130050
33 Correct 3 ms 376 KB Correct answer: answer = 5110
34 Correct 2 ms 376 KB Correct answer: answer = 2626
35 Correct 3 ms 256 KB Correct answer: answer = 796
36 Correct 3 ms 376 KB Correct answer: answer = 7580
37 Correct 3 ms 380 KB Correct answer: answer = 1904
38 Correct 2 ms 376 KB Correct answer: answer = 996004
39 Correct 2 ms 376 KB Correct answer: answer = 38817
40 Correct 3 ms 348 KB Correct answer: answer = 4096
41 Correct 2 ms 256 KB Correct answer: answer = 1
42 Correct 2 ms 256 KB Correct answer: answer = 1
43 Correct 3 ms 376 KB Correct answer: answer = 2040
44 Correct 2 ms 376 KB Correct answer: answer = 2
45 Correct 2 ms 376 KB Correct answer: answer = 4
46 Correct 2 ms 256 KB Correct answer: answer = 9
47 Correct 2 ms 380 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 376 KB Correct answer: answer = 71
50 Correct 2 ms 352 KB Correct answer: answer = 77
51 Correct 2 ms 376 KB Correct answer: answer = 400
52 Correct 2 ms 376 KB Correct answer: answer = 996004
53 Correct 2 ms 376 KB Correct answer: answer = 997310
54 Correct 2 ms 376 KB Correct answer: answer = 990781
55 Correct 2 ms 376 KB Correct answer: answer = 996545
56 Correct 2 ms 376 KB Correct answer: answer = 484
57 Correct 2 ms 376 KB Correct answer: answer = 484
58 Correct 3 ms 376 KB Correct answer: answer = 63501
59 Correct 3 ms 376 KB Correct answer: answer = 323501
60 Correct 3 ms 376 KB Correct answer: answer = 752500
61 Correct 2 ms 376 KB Correct answer: answer = 761480
62 Correct 2 ms 256 KB Correct answer: answer = 758932
63 Correct 2 ms 256 KB Correct answer: answer = 1000000
64 Correct 3 ms 376 KB Correct answer: answer = 750500
65 Correct 2 ms 252 KB Correct answer: answer = 1000000
66 Correct 2 ms 256 KB Correct answer: answer = 250000
67 Correct 2 ms 256 KB Correct answer: answer = 250000
68 Correct 2 ms 376 KB Correct answer: answer = 1000000
69 Correct 2 ms 376 KB Correct answer: answer = 994009
70 Correct 2 ms 376 KB Correct answer: answer = 59315
71 Correct 3 ms 256 KB Correct answer: answer = 25454
72 Correct 3 ms 252 KB Correct answer: answer = 1504
73 Correct 2 ms 256 KB Correct answer: answer = 37486
74 Correct 2 ms 376 KB Correct answer: answer = 4284
75 Correct 2 ms 376 KB Correct answer: answer = 158008
76 Correct 2 ms 376 KB Correct answer: answer = 51860
77 Correct 3 ms 376 KB Correct answer: answer = 12985
78 Correct 4 ms 504 KB Correct answer: answer = 997864126212
79 Correct 4 ms 504 KB Correct answer: answer = 998608411647
80 Correct 4 ms 504 KB Correct answer: answer = 995265560477
81 Correct 7 ms 632 KB Correct answer: answer = 10125000
82 Correct 8 ms 632 KB Correct answer: answer = 2291668
83 Correct 5 ms 504 KB Correct answer: answer = 42388
84 Correct 5 ms 488 KB Correct answer: answer = 10318
85 Correct 5 ms 376 KB Correct answer: answer = 3416
86 Correct 12 ms 628 KB Correct answer: answer = 331708193881
87 Correct 12 ms 632 KB Correct answer: answer = 2861193756
88 Correct 12 ms 608 KB Correct answer: answer = 114646930
89 Correct 8 ms 588 KB Correct answer: answer = 9280921
90 Correct 10 ms 632 KB Correct answer: answer = 999984053400
91 Correct 12 ms 632 KB Correct answer: answer = 750935949134
92 Correct 3 ms 376 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 504 KB Correct answer: answer = 998762383161
94 Correct 12 ms 632 KB Correct answer: answer = 23017412908
95 Correct 4 ms 504 KB Correct answer: answer = 728143410622
96 Correct 3 ms 376 KB Correct answer: answer = 2
97 Correct 10 ms 632 KB Correct answer: answer = 1824916
98 Correct 10 ms 504 KB Correct answer: answer = 10680029
99 Correct 10 ms 632 KB Correct answer: answer = 18351700
100 Correct 9 ms 504 KB Correct answer: answer = 16040026
101 Correct 5 ms 504 KB Correct answer: answer = 253968628325
102 Correct 6 ms 504 KB Correct answer: answer = 10267
103 Correct 11 ms 632 KB Correct answer: answer = 2582408
104 Correct 4 ms 504 KB Correct answer: answer = 78024964781
105 Correct 4 ms 504 KB Correct answer: answer = 9866346457
106 Correct 5 ms 504 KB Correct answer: answer = 3327720949
107 Correct 4 ms 504 KB Correct answer: answer = 86064128360
108 Correct 5 ms 504 KB Correct answer: answer = 12698259150
109 Correct 9 ms 504 KB Correct answer: answer = 1185259288
110 Correct 24 ms 2168 KB Correct answer: answer = 999889968863
111 Correct 23 ms 2168 KB Correct answer: answer = 999861384931
112 Correct 24 ms 2168 KB Correct answer: answer = 999811809929
113 Correct 23 ms 2192 KB Correct answer: answer = 999869756441
114 Correct 116 ms 3424 KB Correct answer: answer = 1700000000
115 Correct 113 ms 3440 KB Correct answer: answer = 131666670
116 Correct 27 ms 1400 KB Correct answer: answer = 89478486
117 Correct 32 ms 1400 KB Correct answer: answer = 4971040
118 Correct 29 ms 1400 KB Correct answer: answer = 2711494
119 Correct 113 ms 3240 KB Correct answer: answer = 25252530
120 Correct 91 ms 3308 KB Correct answer: answer = 62500000
121 Correct 145 ms 2924 KB Correct answer: answer = 333175097780
122 Correct 158 ms 2860 KB Correct answer: answer = 33121180179
123 Correct 153 ms 2796 KB Correct answer: answer = 9802314015
124 Correct 117 ms 3340 KB Correct answer: answer = 32567551
125 Correct 133 ms 3288 KB Correct answer: answer = 997525000000
126 Correct 139 ms 2796 KB Correct answer: answer = 752723538884
127 Correct 16 ms 2168 KB Correct answer: answer = 1000000000000
128 Correct 23 ms 2168 KB Correct answer: answer = 999978000121
129 Correct 23 ms 2168 KB Correct answer: answer = 745986144735
130 Correct 13 ms 1784 KB Correct answer: answer = 2
131 Correct 133 ms 3248 KB Correct answer: answer = 277966670
132 Correct 125 ms 2800 KB Correct answer: answer = 2500900082
133 Correct 36 ms 2168 KB Correct answer: answer = 301248349636
134 Correct 66 ms 1592 KB Correct answer: answer = 14118891
135 Correct 24 ms 2168 KB Correct answer: answer = 14384977265
136 Correct 27 ms 2148 KB Correct answer: answer = 3681368330
137 Correct 24 ms 2168 KB Correct answer: answer = 2720316816
# Verdict Execution time Memory Grader output
1 Correct 2 ms 376 KB Correct answer: answer = 4
2 Correct 2 ms 376 KB Correct answer: answer = 4
3 Correct 2 ms 376 KB Correct answer: answer = 4
4 Correct 2 ms 256 KB Correct answer: answer = 12
5 Correct 2 ms 376 KB Correct answer: answer = 52
6 Correct 2 ms 376 KB Correct answer: answer = 210
7 Correct 2 ms 376 KB Correct answer: answer = 88
8 Correct 2 ms 256 KB Correct answer: answer = 7696
9 Correct 2 ms 376 KB Correct answer: answer = 1
10 Correct 2 ms 256 KB Correct answer: answer = 2374
11 Correct 2 ms 376 KB Correct answer: answer = 9502
12 Correct 2 ms 376 KB Correct answer: answer = 49
13 Correct 2 ms 376 KB Correct answer: answer = 151
14 Correct 2 ms 376 KB Correct answer: answer = 7550
15 Correct 2 ms 376 KB Correct answer: answer = 7220
16 Correct 2 ms 376 KB Correct answer: answer = 7550
17 Correct 2 ms 256 KB Correct answer: answer = 10000
18 Correct 2 ms 376 KB Correct answer: answer = 10000
19 Correct 2 ms 376 KB Correct answer: answer = 624
20 Correct 2 ms 256 KB Correct answer: answer = 10000
21 Correct 2 ms 256 KB Correct answer: answer = 1
22 Correct 2 ms 256 KB Correct answer: answer = 4
23 Correct 2 ms 376 KB Correct answer: answer = 1
24 Correct 2 ms 256 KB Correct answer: answer = 5
25 Correct 2 ms 256 KB Correct answer: answer = 41
26 Correct 2 ms 256 KB Correct answer: answer = 71923
27 Correct 2 ms 376 KB Correct answer: answer = 77137
28 Correct 3 ms 376 KB Correct answer: answer = 764
29 Correct 2 ms 376 KB Correct answer: answer = 250000
30 Correct 3 ms 376 KB Correct answer: answer = 500
31 Correct 2 ms 376 KB Correct answer: answer = 32
32 Correct 2 ms 376 KB Correct answer: answer = 130050
33 Correct 3 ms 376 KB Correct answer: answer = 5110
34 Correct 2 ms 376 KB Correct answer: answer = 2626
35 Correct 3 ms 256 KB Correct answer: answer = 796
36 Correct 3 ms 376 KB Correct answer: answer = 7580
37 Correct 3 ms 380 KB Correct answer: answer = 1904
38 Correct 2 ms 376 KB Correct answer: answer = 996004
39 Correct 2 ms 376 KB Correct answer: answer = 38817
40 Correct 3 ms 348 KB Correct answer: answer = 4096
41 Correct 2 ms 256 KB Correct answer: answer = 1
42 Correct 2 ms 256 KB Correct answer: answer = 1
43 Correct 3 ms 376 KB Correct answer: answer = 2040
44 Correct 2 ms 376 KB Correct answer: answer = 2
45 Correct 2 ms 376 KB Correct answer: answer = 4
46 Correct 2 ms 256 KB Correct answer: answer = 9
47 Correct 2 ms 380 KB Correct answer: answer = 9
48 Correct 2 ms 256 KB Correct answer: answer = 21
49 Correct 2 ms 376 KB Correct answer: answer = 71
50 Correct 2 ms 352 KB Correct answer: answer = 77
51 Correct 2 ms 376 KB Correct answer: answer = 400
52 Correct 2 ms 376 KB Correct answer: answer = 996004
53 Correct 2 ms 376 KB Correct answer: answer = 997310
54 Correct 2 ms 376 KB Correct answer: answer = 990781
55 Correct 2 ms 376 KB Correct answer: answer = 996545
56 Correct 2 ms 376 KB Correct answer: answer = 484
57 Correct 2 ms 376 KB Correct answer: answer = 484
58 Correct 3 ms 376 KB Correct answer: answer = 63501
59 Correct 3 ms 376 KB Correct answer: answer = 323501
60 Correct 3 ms 376 KB Correct answer: answer = 752500
61 Correct 2 ms 376 KB Correct answer: answer = 761480
62 Correct 2 ms 256 KB Correct answer: answer = 758932
63 Correct 2 ms 256 KB Correct answer: answer = 1000000
64 Correct 3 ms 376 KB Correct answer: answer = 750500
65 Correct 2 ms 252 KB Correct answer: answer = 1000000
66 Correct 2 ms 256 KB Correct answer: answer = 250000
67 Correct 2 ms 256 KB Correct answer: answer = 250000
68 Correct 2 ms 376 KB Correct answer: answer = 1000000
69 Correct 2 ms 376 KB Correct answer: answer = 994009
70 Correct 2 ms 376 KB Correct answer: answer = 59315
71 Correct 3 ms 256 KB Correct answer: answer = 25454
72 Correct 3 ms 252 KB Correct answer: answer = 1504
73 Correct 2 ms 256 KB Correct answer: answer = 37486
74 Correct 2 ms 376 KB Correct answer: answer = 4284
75 Correct 2 ms 376 KB Correct answer: answer = 158008
76 Correct 2 ms 376 KB Correct answer: answer = 51860
77 Correct 3 ms 376 KB Correct answer: answer = 12985
78 Correct 4 ms 504 KB Correct answer: answer = 997864126212
79 Correct 4 ms 504 KB Correct answer: answer = 998608411647
80 Correct 4 ms 504 KB Correct answer: answer = 995265560477
81 Correct 7 ms 632 KB Correct answer: answer = 10125000
82 Correct 8 ms 632 KB Correct answer: answer = 2291668
83 Correct 5 ms 504 KB Correct answer: answer = 42388
84 Correct 5 ms 488 KB Correct answer: answer = 10318
85 Correct 5 ms 376 KB Correct answer: answer = 3416
86 Correct 12 ms 628 KB Correct answer: answer = 331708193881
87 Correct 12 ms 632 KB Correct answer: answer = 2861193756
88 Correct 12 ms 608 KB Correct answer: answer = 114646930
89 Correct 8 ms 588 KB Correct answer: answer = 9280921
90 Correct 10 ms 632 KB Correct answer: answer = 999984053400
91 Correct 12 ms 632 KB Correct answer: answer = 750935949134
92 Correct 3 ms 376 KB Correct answer: answer = 1000000000000
93 Correct 4 ms 504 KB Correct answer: answer = 998762383161
94 Correct 12 ms 632 KB Correct answer: answer = 23017412908
95 Correct 4 ms 504 KB Correct answer: answer = 728143410622
96 Correct 3 ms 376 KB Correct answer: answer = 2
97 Correct 10 ms 632 KB Correct answer: answer = 1824916
98 Correct 10 ms 504 KB Correct answer: answer = 10680029
99 Correct 10 ms 632 KB Correct answer: answer = 18351700
100 Correct 9 ms 504 KB Correct answer: answer = 16040026
101 Correct 5 ms 504 KB Correct answer: answer = 253968628325
102 Correct 6 ms 504 KB Correct answer: answer = 10267
103 Correct 11 ms 632 KB Correct answer: answer = 2582408
104 Correct 4 ms 504 KB Correct answer: answer = 78024964781
105 Correct 4 ms 504 KB Correct answer: answer = 9866346457
106 Correct 5 ms 504 KB Correct answer: answer = 3327720949
107 Correct 4 ms 504 KB Correct answer: answer = 86064128360
108 Correct 5 ms 504 KB Correct answer: answer = 12698259150
109 Correct 9 ms 504 KB Correct answer: answer = 1185259288
110 Correct 24 ms 2168 KB Correct answer: answer = 999889968863
111 Correct 23 ms 2168 KB Correct answer: answer = 999861384931
112 Correct 24 ms 2168 KB Correct answer: answer = 999811809929
113 Correct 23 ms 2192 KB Correct answer: answer = 999869756441
114 Correct 116 ms 3424 KB Correct answer: answer = 1700000000
115 Correct 113 ms 3440 KB Correct answer: answer = 131666670
116 Correct 27 ms 1400 KB Correct answer: answer = 89478486
117 Correct 32 ms 1400 KB Correct answer: answer = 4971040
118 Correct 29 ms 1400 KB Correct answer: answer = 2711494
119 Correct 113 ms 3240 KB Correct answer: answer = 25252530
120 Correct 91 ms 3308 KB Correct answer: answer = 62500000
121 Correct 145 ms 2924 KB Correct answer: answer = 333175097780
122 Correct 158 ms 2860 KB Correct answer: answer = 33121180179
123 Correct 153 ms 2796 KB Correct answer: answer = 9802314015
124 Correct 117 ms 3340 KB Correct answer: answer = 32567551
125 Correct 133 ms 3288 KB Correct answer: answer = 997525000000
126 Correct 139 ms 2796 KB Correct answer: answer = 752723538884
127 Correct 16 ms 2168 KB Correct answer: answer = 1000000000000
128 Correct 23 ms 2168 KB Correct answer: answer = 999978000121
129 Correct 23 ms 2168 KB Correct answer: answer = 745986144735
130 Correct 13 ms 1784 KB Correct answer: answer = 2
131 Correct 133 ms 3248 KB Correct answer: answer = 277966670
132 Correct 125 ms 2800 KB Correct answer: answer = 2500900082
133 Correct 36 ms 2168 KB Correct answer: answer = 301248349636
134 Correct 66 ms 1592 KB Correct answer: answer = 14118891
135 Correct 24 ms 2168 KB Correct answer: answer = 14384977265
136 Correct 27 ms 2148 KB Correct answer: answer = 3681368330
137 Correct 24 ms 2168 KB Correct answer: answer = 2720316816
138 Correct 47 ms 4068 KB Correct answer: answer = 999976000144
139 Correct 46 ms 4088 KB Correct answer: answer = 999856102410
140 Correct 46 ms 3992 KB Correct answer: answer = 999958401531
141 Correct 46 ms 3960 KB Correct answer: answer = 999769649944
142 Correct 45 ms 3988 KB Correct answer: answer = 999874525918
143 Correct 216 ms 6416 KB Correct answer: answer = 6050000000
144 Correct 250 ms 6368 KB Correct answer: answer = 1112500000
145 Correct 20 ms 3060 KB Correct answer: answer = 4294967296
146 Correct 159 ms 4200 KB Correct answer: answer = 87652406
147 Correct 158 ms 4180 KB Correct answer: answer = 6297664
148 Correct 120 ms 4276 KB Correct answer: answer = 196612
149 Correct 252 ms 6240 KB Correct answer: answer = 15015100
150 Correct 193 ms 6240 KB Correct answer: answer = 25000000
151 Correct 312 ms 5244 KB Correct answer: answer = 333230209550
152 Correct 310 ms 5216 KB Correct answer: answer = 917123769
153 Correct 289 ms 5216 KB Correct answer: answer = 95162
154 Correct 265 ms 6240 KB Correct answer: answer = 382616191
155 Correct 283 ms 6336 KB Correct answer: answer = 990033333400
156 Correct 281 ms 6280 KB Correct answer: answer = 990000100000
157 Correct 258 ms 4960 KB Correct answer: answer = 749998188180
158 Correct 29 ms 3952 KB Correct answer: answer = 1000000000000
159 Correct 45 ms 4088 KB Correct answer: answer = 999988000036
160 Correct 47 ms 4088 KB Correct answer: answer = 744929274393
161 Correct 23 ms 3064 KB Correct answer: answer = 2
162 Correct 276 ms 6184 KB Correct answer: answer = 1300024
163 Correct 231 ms 6208 KB Correct answer: answer = 5000700010
164 Correct 74 ms 4088 KB Correct answer: answer = 354997100800
165 Correct 140 ms 3052 KB Correct answer: answer = 257000
166 Correct 141 ms 3416 KB Correct answer: answer = 3765323
167 Correct 140 ms 3564 KB Correct answer: answer = 1525903
168 Correct 45 ms 4088 KB Correct answer: answer = 67618137730
169 Correct 46 ms 4116 KB Correct answer: answer = 12656680171
170 Correct 52 ms 4104 KB Correct answer: answer = 579831736
171 Correct 120 ms 4244 KB Correct answer: answer = 23605611
172 Correct 53 ms 4088 KB Correct answer: answer = 7052481200
173 Correct 71 ms 4088 KB Correct answer: answer = 1314039500
174 Correct 89 ms 4216 KB Correct answer: answer = 302484000
175 Correct 187 ms 4584 KB Correct answer: answer = 52348480