QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#200908#6355. 5ucup-team859TL 4946ms41556kbC++143.2kb2023-10-05 00:15:592023-10-05 00:15:59

Judging History

你现在查看的是最新测评结果

  • [2023-10-05 00:15:59]
  • 评测
  • 测评结果:TL
  • 用时:4946ms
  • 内存:41556kb
  • [2023-10-05 00:15:59]
  • 提交

answer

#include <bits/stdc++.h>

#define lsb(x) (x & (-x))

using ull = unsigned long long;
using ll = long long;

using namespace std;

inline bool inside(const pair<int, int> &x, const pair<int, int> &y) {
  return (x.first <= y.first && y.second <= x.second);
}

inline bool intersect(const pair<int, int> &x, const pair<int, int> &y) {
  return !(x.second < y.first || y.second < x.first);
}

inline void merge(vector<pair<int, int>> &x, vector<pair<int, int>> &y, int add = 1) {
  for (auto interval : y) {
    auto to_merge = make_pair(interval.first + add, interval.second + add);
    bool bad = false;
    for (auto it = x.begin(); !x.empty() && it != x.end();) {
      if (intersect(*it, to_merge)) {
        if (inside(*it, to_merge)) {
          bad = true;
          break;
        }
        to_merge.first = min(to_merge.first, it->first);
        to_merge.second = max(to_merge.second, it->second);
        auto tmp = next(it);
        x.erase(it);
        it = tmp;
      } else {
        it = next(it);
      }
    }

    if (!bad)
      x.push_back(to_merge);
  }
}

const int DIM = 2e5 + 5;
vector<pair<int, int>> arb[4 * DIM];
void build(int st, int dr, int nod, vector<vector<pair<int, int>>> &dp) {
  if (st == dr) {
    arb[nod] = dp[st];
    return;
  }

  int mij = (st + dr) / 2;
  build(st, mij, nod * 2, dp);
  build(mij + 1, dr, nod * 2 + 1, dp);

  arb[nod] = arb[nod * 2];
  merge(arb[nod], arb[nod * 2 + 1], mij - st + 1);
}

void query(int x, int y, int st, int dr, int nod, vector<pair<int, int>> &ans, int &add) {
  if (x <= st && dr <= y) {
    merge(ans, arb[nod], add);
    add += (dr - st + 1);
    return;
  }

  int mij = (st + dr) / 2;
  if (x <= mij)
    query(x, y, st, mij, nod * 2, ans, add);

  if (y >= mij + 1)
    query(x, y, mij + 1, dr, nod * 2 + 1, ans, add);
}

int main() {
  ios::sync_with_stdio(false);
  cin.tie(0);

  int n, s;
  cin >> n >> s;
  vector<int> cnt(s + 1, 0);
  vector<int> a(n + 1, 0);
  int cnt_neg = 0, new_s = 0;
  for (int i = 1; i <= n; ++i) {
    cin >> a[i];
    a[i] -= 1;
    if (a[i] >= 0) {
      ++cnt[a[i]];
      new_s += a[i];
    }
    else
      ++cnt_neg;
  }

  s = new_s;
  vector<vector<pair<int, int>>> dp(s + 1);
  int sx = 0;
  for (int val = 0; val <= s; ++val) {
    if (!cnt[val])
      continue;

    if (val == 0) {
      dp[0].push_back({0, cnt[val]});
      continue;
    }

    sx += val * cnt[val];
    for (int j = sx; j >= val; --j) {
      for (int x = val, nr = 1; x <= j && nr <= cnt[val]; x += val, ++nr)
        merge(dp[j], dp[j - x], nr);
    }
  }

  ll ans = 0;
  build(1, s, 1, dp);

  for (int i = 1; i <= cnt_neg; ++i) {
    vector<pair<int, int>> tmp = dp[0];

    if (i < cnt_neg) {
      int add = 1;
      query(1, cnt_neg - i, 1, s, 1, tmp, add);
    }

    for (auto interval : tmp)
      ans += interval.second - interval.first + 1;
  }

  for (int i = 0; i <= s; ++i) {
    if (i < s && cnt_neg > 0) {
      int add = 1;
      query(i + 1, min(i + cnt_neg, s), 1, s, 1, dp[i], add);
    }

    for (auto interval : dp[i])
      ans += interval.second - interval.first + 1;
  }

  
  cout << ans << endl;
  return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 0ms
memory: 22320kb

input:

7 9
0 0 0 1 1 2 5

output:

42

result:

ok 1 number(s): "42"

Test #2:

score: 0
Accepted
time: 0ms
memory: 22356kb

input:

10 33
9 9 8 1 1 1 1 1 1 1

output:

48

result:

ok 1 number(s): "48"

Test #3:

score: 0
Accepted
time: 0ms
memory: 22340kb

input:

10 14
2 4 4 1 0 1 0 1 0 1

output:

81

result:

ok 1 number(s): "81"

Test #4:

score: 0
Accepted
time: 2ms
memory: 22356kb

input:

10 14
3 5 3 0 1 0 1 0 1 0

output:

87

result:

ok 1 number(s): "87"

Test #5:

score: 0
Accepted
time: 3ms
memory: 22344kb

input:

40 50
1 1 1 1 3 3 0 3 1 1 0 0 2 1 0 0 1 0 0 2 7 1 2 1 3 0 2 2 3 1 1 0 0 2 0 1 1 0 1 1

output:

1067

result:

ok 1 number(s): "1067"

Test #6:

score: 0
Accepted
time: 3ms
memory: 22624kb

input:

1200 1000
1 1 2 3 0 1 0 0 1 1 0 2 3 0 1 2 0 0 1 0 4 1 1 2 1 1 0 0 1 1 0 1 0 0 1 0 1 0 0 0 1 1 0 1 0 0 1 0 0 1 1 0 1 2 0 4 0 3 1 6 0 1 1 0 0 0 0 4 0 0 0 0 0 0 1 0 0 1 7 1 1 1 0 1 0 1 0 1 1 0 0 1 1 1 3 0 1 0 1 0 0 1 1 2 2 0 1 1 0 0 1 4 1 2 0 0 0 3 0 0 2 1 0 2 0 0 0 1 1 0 0 2 0 0 0 0 1 1 0 1 0 1 6 1 1 ...

output:

737899

result:

ok 1 number(s): "737899"

Test #7:

score: 0
Accepted
time: 12ms
memory: 22780kb

input:

12000 10000
1 1 0 0 1 0 2 1 3 0 0 1 0 3 1 1 0 1 1 1 1 1 2 1 0 1 2 1 0 1 2 0 5 1 1 1 0 2 0 1 0 1 0 3 2 0 1 0 1 1 2 1 0 0 1 1 0 1 0 0 0 1 0 1 0 1 0 4 0 1 3 1 0 0 1 0 1 2 1 0 0 1 1 0 2 1 1 0 1 0 1 0 0 2 1 1 3 0 1 1 1 0 0 0 1 1 1 0 3 0 0 0 2 0 0 0 1 0 2 0 1 1 1 0 0 1 0 1 0 2 0 0 0 0 0 0 0 1 0 1 0 0 4 1 ...

output:

73685347

result:

ok 1 number(s): "73685347"

Test #8:

score: 0
Accepted
time: 85ms
memory: 23380kb

input:

36000 30000
0 3 4 1 2 1 1 0 0 1 1 0 1 0 2 1 0 0 0 0 2 1 0 2 0 0 0 0 0 1 1 4 1 4 0 0 2 0 0 0 1 1 0 0 1 1 0 1 0 0 0 0 1 1 0 3 1 1 1 0 0 0 0 0 0 1 2 0 2 3 0 0 0 0 3 1 0 0 0 1 0 1 2 0 0 2 0 1 0 0 2 1 1 0 3 1 6 0 0 1 1 2 0 1 2 0 0 1 0 1 1 0 0 1 0 0 0 1 0 2 0 1 1 1 0 0 5 2 0 5 1 0 0 0 0 1 1 1 8 0 1 1 0 1 ...

output:

658813003

result:

ok 1 number(s): "658813003"

Test #9:

score: 0
Accepted
time: 4210ms
memory: 32916kb

input:

200000 200000
0 1 1 1 1 1 0 1 0 3 1 0 0 1 1 0 1 1 1 2 3 0 1 0 1 0 2 5 0 1 1 4 1 1 0 0 0 0 0 0 2 1 0 0 2 1 1 2 0 3 0 1 3 0 1 1 1 0 1 0 1 2 0 1 1 0 0 2 2 1 0 1 1 2 4 1 0 2 0 5 1 2 0 0 1 0 2 3 1 0 1 1 1 1 0 0 0 5 1 0 0 1 2 1 1 0 0 0 1 0 0 1 2 1 0 0 2 1 2 3 0 0 3 1 0 1 0 0 1 1 1 0 1 0 1 0 0 1 0 0 1 1 1 ...

output:

23477878007

result:

ok 1 number(s): "23477878007"

Test #10:

score: 0
Accepted
time: 4946ms
memory: 34624kb

input:

140000 200000
0 1 3 0 0 0 0 0 1 1 1 1 4 1 1 8 1 1 0 3 0 0 0 1 5 0 1 1 0 4 1 0 2 1 0 0 1 1 1 0 2 4 0 2 0 3 0 2 1 2 1 2 1 1 1 2 1 0 0 1 1 1 1 0 1 0 9 1 5 1 1 4 0 1 1 4 1 1 1 1 3 1 1 1 1 4 1 1 0 3 1 0 1 3 1 1 3 1 1 3 4 1 1 0 0 1 1 0 1 4 1 1 1 1 0 1 1 0 0 2 0 6 5 1 1 3 2 4 0 1 4 1 1 1 1 2 0 0 2 1 5 1 1 ...

output:

15405328745

result:

ok 1 number(s): "15405328745"

Test #11:

score: 0
Accepted
time: 4738ms
memory: 37292kb

input:

90000 200000
3 1 1 1 4 5 1 1 1 1 10 1 3 2 1 1 7 8 1 1 8 5 1 1 6 1 1 1 0 1 4 5 0 5 1 21 1 4 0 2 4 3 1 6 7 3 1 1 1 0 1 2 5 1 1 1 1 2 0 8 0 1 2 4 0 0 11 1 2 2 2 1 28 0 1 1 2 1 2 1 11 1 5 9 1 1 1 1 1 2 1 1 1 1 2 1 0 4 1 1 2 1 1 1 4 1 5 1 1 5 4 1 5 1 0 1 1 1 1 0 1 2 4 1 1 1 1 1 1 1 1 1 2 1 1 3 1 2 1 1 0 ...

output:

9895248405

result:

ok 1 number(s): "9895248405"

Test #12:

score: 0
Accepted
time: 4333ms
memory: 38124kb

input:

80000 200000
1 5 1 1 1 3 1 0 3 11 1 5 1 2 1 21 4 13 1 1 1 1 0 1 1 1 2 1 13 2 1 4 5 0 1 1 6 3 1 1 1 1 1 1 8 1 1 6 3 1 1 1 1 8 1 2 0 1 1 1 1 1 1 1 17 1 1 1 6 1 1 1 11 1 15 5 1 1 1 1 1 2 8 0 0 1 1 2 3 14 1 1 3 18 1 1 1 3 1 1 1 1 1 1 4 0 9 1 0 1 1 1 0 4 1 2 1 1 3 2 3 21 3 2 11 1 1 0 1 29 1 1 2 1 5 6 1 5...

output:

8980751457

result:

ok 1 number(s): "8980751457"

Test #13:

score: 0
Accepted
time: 3782ms
memory: 38584kb

input:

70000 200000
4 0 0 2 5 1 0 1 4 1 1 1 1 3 12 1 1 1 0 1 1 6 5 1 1 1 1 1 0 1 1 1 16 1 1 1 1 1 10 1 2 1 1 0 1 7 1 0 3 3 1 1 1 1 2 2 1 1 7 1 1 2 1 1 1 1 14 1 6 1 1 12 1 1 1 1 1 1 1 7 1 1 1 7 1 1 1 1 2 1 0 1 13 1 0 1 1 1 3 1 3 1 0 1 4 1 1 1 1 3 1 13 0 1 1 7 0 0 1 1 12 3 1 1 3 1 1 1 6 1 1 1 1 1 1 1 1 10 1 ...

output:

8196878191

result:

ok 1 number(s): "8196878191"

Test #14:

score: 0
Accepted
time: 2944ms
memory: 39780kb

input:

60000 200000
1 1 1 1 25 1 4 1 1 1 1 1 10 2 12 1 1 1 1 1 12 7 3 1 3 1 1 1 1 1 1 1 1 1 1 1 1 2 1 12 1 1 1 1 0 1 1 3 1 6 1 6 1 1 2 29 1 0 1 13 3 1 1 0 1 1 5 3 1 1 1 1 1 1 7 1 0 9 1 7 1 1 12 4 1 1 1 23 1 4 24 1 36 1 23 1 18 29 1 1 11 1 1 1 1 1 1 0 1 1 2 13 1 32 1 3 1 0 1 1 1 1 5 23 9 1 1 1 8 12 14 1 1 1...

output:

7466221263

result:

ok 1 number(s): "7466221263"

Test #15:

score: 0
Accepted
time: 1753ms
memory: 40508kb

input:

50000 200000
1 1 87 20 1 1 1 1 1 1 1 1 41 1 1 10 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 5 1 1 1 1 1 1 1 17 1 1 1 1 1 14 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 17 18 1 1 1 1 1 13 1 1 1 1 1 32 1 1 7 1 10 1 1 1 1 14 20 1 1 1 1 1 3 23 27 1 1 1 9 1 1 1 1 4 8 1 12 1 1 1 53 1 1 1 1 26 1 1 1 1 1 1 1 1 1 1 1...

output:

6870036861

result:

ok 1 number(s): "6870036861"

Test #16:

score: 0
Accepted
time: 1009ms
memory: 40972kb

input:

45000 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 11 1 1 1 1 1 1 1 1 1 1 1 26 1 1 10 1 1 1 1 1 1 1 1 1 1 1 50 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 26 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 25 1 1 1 1...

output:

6615361583

result:

ok 1 number(s): "6615361583"

Test #17:

score: 0
Accepted
time: 827ms
memory: 41104kb

input:

44000 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 6 1 16 1 1 1 1 104 1 1 1 1 1 1 50 23 1 1 1 1 1 1 23 1 18 1 1 1 1 1 1 1 28 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 1 1 1 1 1 1 1 49 1 1 1 1 1 1 1 1 1 1 1 1 53 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 76 1 1 1 1 1 1 1 1 1 149 1 1 1 1 1 0 1 1...

output:

6575348967

result:

ok 1 number(s): "6575348967"

Test #18:

score: 0
Accepted
time: 668ms
memory: 41336kb

input:

43000 200000
1 53 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 15 1 1 1 1 104 1 1 1 1 1 1 1 1 20 1 1 1 1 1 1 1 16 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 13 1 1 1 1 1 1 1 1 1 1 1 1 1 7 1 1 1 65 1 1 1 1 138 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 15 62 1 1 1 1...

output:

6527389951

result:

ok 1 number(s): "6527389951"

Test #19:

score: 0
Accepted
time: 481ms
memory: 41224kb

input:

42000 200000
1 1 1 1 1 1 1 1 23 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 239 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 10 1 58 1 ...

output:

6480594507

result:

ok 1 number(s): "6480594507"

Test #20:

score: 0
Accepted
time: 267ms
memory: 41488kb

input:

41000 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 43 1 1 1 1 1 1 1 1 1 85 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 58 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 152 1 1 1 1 1 1 1 1 1 1 1 ...

output:

6440851777

result:

ok 1 number(s): "6440851777"

Test #21:

score: 0
Accepted
time: 234ms
memory: 41556kb

input:

40800 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 398 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 18 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

output:

6433344943

result:

ok 1 number(s): "6433344943"

Test #22:

score: 0
Accepted
time: 161ms
memory: 41488kb

input:

40500 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 151 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

6419515129

result:

ok 1 number(s): "6419515129"

Test #23:

score: 0
Accepted
time: 90ms
memory: 41448kb

input:

40300 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

6413828837

result:

ok 1 number(s): "6413828837"

Test #24:

score: 0
Accepted
time: 88ms
memory: 41480kb

input:

40200 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

6406509705

result:

ok 1 number(s): "6406509705"

Test #25:

score: 0
Accepted
time: 53ms
memory: 41500kb

input:

40100 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 353 1 1 1 1 1 1 1 1...

output:

6394891119

result:

ok 1 number(s): "6394891119"

Test #26:

score: 0
Accepted
time: 46ms
memory: 41280kb

input:

40080 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

6353150219

result:

ok 1 number(s): "6353150219"

Test #27:

score: 0
Accepted
time: 35ms
memory: 41380kb

input:

40060 200000
1 1 1 1 1 1 1 1 1 1 1992 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

output:

6324862643

result:

ok 1 number(s): "6324862643"

Test #28:

score: 0
Accepted
time: 27ms
memory: 41096kb

input:

40030 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

6148794579

result:

ok 1 number(s): "6148794579"

Test #29:

score: 0
Accepted
time: 28ms
memory: 38488kb

input:

40020 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

4915254493

result:

ok 1 number(s): "4915254493"

Test #30:

score: 0
Accepted
time: 7ms
memory: 26844kb

input:

40010 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

40961024

result:

ok 1 number(s): "40961024"

Test #31:

score: 0
Accepted
time: 7ms
memory: 26712kb

input:

40005 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

1280032

result:

ok 1 number(s): "1280032"

Test #32:

score: 0
Accepted
time: 5ms
memory: 26412kb

input:

40003 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

320008

result:

ok 1 number(s): "320008"

Test #33:

score: 0
Accepted
time: 9ms
memory: 26428kb

input:

40002 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

160004

result:

ok 1 number(s): "160004"

Test #34:

score: 0
Accepted
time: 3ms
memory: 26512kb

input:

40001 200000
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1...

output:

80002

result:

ok 1 number(s): "80002"

Test #35:

score: 0
Accepted
time: 4871ms
memory: 34548kb

input:

150000 200000
4 1 2 1 3 1 1 1 0 1 2 1 1 3 1 1 1 1 0 4 1 1 3 1 1 3 1 0 2 1 0 1 0 0 1 0 3 6 1 0 3 0 1 3 2 5 0 0 0 1 3 0 2 1 5 0 1 1 1 2 1 1 0 1 1 1 0 0 0 3 1 1 6 3 0 0 3 1 0 3 1 5 0 1 2 1 5 1 3 3 2 0 0 1 2 5 0 0 0 1 1 1 1 0 3 4 2 0 1 0 0 1 0 1 0 0 0 1 1 1 1 0 1 1 3 1 1 1 1 2 0 1 1 1 0 1 1 1 0 1 5 1 2 ...

output:

16598916037

result:

ok 1 number(s): "16598916037"

Test #36:

score: 0
Accepted
time: 4808ms
memory: 33904kb

input:

160000 200000
2 0 1 1 0 0 0 0 1 0 0 0 1 0 1 1 4 0 1 0 3 0 0 2 1 2 1 4 1 1 1 1 2 1 1 6 1 1 3 0 0 2 0 0 1 0 0 0 1 1 1 1 0 8 4 0 4 1 1 1 0 0 1 1 1 1 1 1 3 1 5 0 5 4 1 1 0 1 2 0 0 1 0 4 4 3 1 1 0 1 0 1 1 0 2 1 3 1 4 5 0 0 0 0 1 1 1 3 1 1 0 3 1 3 0 1 1 2 0 3 1 2 5 2 3 1 3 0 0 1 0 0 1 4 1 0 1 4 3 0 1 1 0 ...

output:

17975355171

result:

ok 1 number(s): "17975355171"

Test #37:

score: 0
Accepted
time: 4667ms
memory: 33628kb

input:

170000 200000
5 1 0 0 7 3 1 0 1 0 0 1 1 2 5 0 0 0 1 1 0 2 1 0 1 0 1 4 0 1 2 2 0 1 1 1 1 3 0 2 3 0 2 1 1 1 1 1 0 1 0 1 0 3 1 1 0 0 1 0 1 1 1 0 0 3 1 1 0 2 1 0 0 0 0 0 2 1 0 1 1 0 1 1 1 2 0 1 1 1 0 1 0 0 6 1 3 1 8 1 0 0 3 0 1 3 0 0 3 1 1 1 0 1 0 1 1 1 1 1 0 0 2 0 0 1 1 1 4 0 0 1 0 0 0 0 0 1 0 1 1 4 0 ...

output:

19302687621

result:

ok 1 number(s): "19302687621"

Test #38:

score: 0
Accepted
time: 4514ms
memory: 33360kb

input:

180000 200000
1 1 0 1 1 1 0 4 2 0 1 1 1 5 0 0 0 1 0 3 1 1 1 14 0 0 1 0 0 0 0 0 4 0 1 3 2 2 3 0 1 0 1 2 4 4 6 0 1 0 1 1 0 2 0 0 3 1 7 3 1 1 2 1 0 1 0 0 1 1 1 0 2 1 0 1 1 1 1 1 2 0 1 2 1 1 0 1 1 1 2 1 1 1 0 1 1 2 1 1 0 1 1 0 1 0 1 1 0 1 2 2 1 0 1 1 1 0 0 2 0 1 0 1 0 6 0 1 2 0 0 2 1 0 0 3 1 1 1 0 7 1 1...

output:

20620443627

result:

ok 1 number(s): "20620443627"

Test #39:

score: 0
Accepted
time: 4360ms
memory: 33104kb

input:

190000 200000
0 1 2 0 0 1 1 0 1 0 0 0 0 3 0 5 0 0 1 2 1 0 1 0 0 2 0 1 1 0 0 1 1 6 2 2 1 0 2 1 3 1 1 1 1 0 1 1 2 0 1 0 0 1 1 0 1 2 1 0 0 1 1 0 2 0 1 2 1 0 1 0 1 1 1 0 0 1 1 0 2 0 1 0 0 1 1 0 0 0 0 1 0 2 0 0 2 1 0 5 0 3 0 0 1 2 0 0 1 2 0 1 0 2 3 1 1 0 1 3 1 1 1 0 0 0 0 5 0 2 1 0 1 0 1 1 0 2 5 1 0 3 4 ...

output:

22057165057

result:

ok 1 number(s): "22057165057"

Test #40:

score: 0
Accepted
time: 4201ms
memory: 32848kb

input:

199000 200000
1 0 0 1 1 0 1 0 1 4 1 1 0 0 0 0 0 1 0 0 7 0 3 1 3 0 0 1 1 3 0 4 1 1 0 1 2 1 1 4 2 5 1 0 0 0 0 0 2 5 2 0 1 1 1 1 0 1 0 2 1 1 1 3 1 0 0 1 1 1 1 1 0 2 2 0 1 1 1 0 2 1 1 1 1 0 2 2 1 0 0 0 0 0 5 1 0 0 0 1 0 0 1 0 0 1 0 0 1 2 1 1 1 0 0 1 0 1 1 0 3 1 1 1 1 0 1 0 0 3 4 0 0 0 1 0 0 2 2 0 1 2 2 ...

output:

23338533811

result:

ok 1 number(s): "23338533811"

Test #41:

score: 0
Accepted
time: 4255ms
memory: 32912kb

input:

198000 200000
1 1 0 1 2 1 4 0 0 0 5 0 0 2 0 1 0 1 0 1 2 1 3 2 1 3 2 0 2 0 0 1 1 1 0 1 2 1 0 1 0 0 1 1 2 3 1 0 1 1 0 6 3 0 1 0 0 1 1 0 1 1 1 1 0 1 0 0 0 1 1 0 1 0 1 1 1 2 1 0 1 0 2 5 1 1 0 1 1 1 0 0 1 2 1 1 0 0 0 0 2 1 3 0 1 0 4 2 0 0 2 2 2 1 1 0 0 2 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 1 0 0 1 0 1 0 2 ...

output:

23205443235

result:

ok 1 number(s): "23205443235"

Test #42:

score: 0
Accepted
time: 4275ms
memory: 32836kb

input:

197000 200000
1 0 1 1 0 0 3 0 0 1 2 1 0 0 1 1 1 1 1 1 1 3 2 1 1 1 1 0 0 0 1 4 1 1 3 1 0 3 1 1 2 0 0 1 0 0 0 0 1 0 0 1 0 1 0 2 3 0 1 1 0 2 1 2 1 1 1 1 1 0 1 0 1 4 1 0 1 1 1 0 1 0 1 0 1 2 1 1 0 1 1 2 1 0 1 1 0 1 0 2 1 0 1 0 2 1 0 1 0 0 1 0 0 2 0 0 3 1 0 0 1 6 1 0 5 0 0 4 0 0 1 2 3 0 0 0 2 1 1 0 0 0 0 ...

output:

23008514485

result:

ok 1 number(s): "23008514485"

Test #43:

score: 0
Accepted
time: 4278ms
memory: 32920kb

input:

196000 200000
2 1 1 1 0 2 1 2 0 1 2 0 3 1 0 0 0 1 2 1 0 1 0 1 0 0 0 5 0 1 3 0 5 1 1 3 5 1 1 1 0 0 0 4 0 0 1 1 4 1 1 1 0 0 0 1 5 1 0 0 1 5 1 4 0 2 2 3 1 0 0 0 2 1 4 0 1 3 0 1 1 2 0 0 0 2 0 2 1 0 3 1 0 0 0 1 1 1 1 1 0 1 0 0 0 1 0 1 4 1 0 0 0 1 0 0 0 0 4 1 0 1 1 0 1 1 1 1 0 1 0 1 3 0 0 0 0 1 0 1 2 1 0 ...

output:

22830578635

result:

ok 1 number(s): "22830578635"

Test #44:

score: 0
Accepted
time: 4296ms
memory: 32804kb

input:

195000 200000
0 1 1 1 0 0 0 2 0 1 0 0 0 3 0 3 1 0 1 0 0 1 4 0 0 0 1 1 5 0 0 3 2 1 1 1 2 0 1 1 0 0 3 0 1 1 0 1 0 1 0 4 1 1 1 0 1 1 1 1 1 0 1 2 0 0 0 1 0 4 1 2 0 1 0 0 1 4 1 0 1 2 1 1 2 1 1 0 1 1 4 1 0 1 1 0 2 0 0 1 2 0 0 5 0 1 1 0 0 0 2 0 0 2 0 4 1 0 1 4 0 3 1 0 4 0 2 0 1 1 0 0 1 0 1 1 1 0 4 1 3 1 1 ...

output:

22728530185

result:

ok 1 number(s): "22728530185"

Test #45:

score: -100
Time Limit Exceeded

input:

130000 200000
1 1 1 6 0 1 0 3 1 2 1 0 1 2 1 1 4 1 1 1 1 1 3 0 4 1 1 4 1 7 1 1 0 1 2 1 1 1 4 3 0 2 0 1 0 3 1 1 8 4 1 1 1 0 0 1 1 1 0 7 1 3 1 0 1 1 1 0 1 0 2 0 9 1 1 1 1 3 4 1 3 2 1 2 1 0 0 1 3 7 1 0 0 1 1 2 0 0 1 1 1 0 0 4 1 5 2 1 1 8 1 0 0 1 2 1 1 0 1 1 2 3 9 1 1 4 3 2 2 1 1 0 1 1 1 1 4 5 4 1 1 0 0 ...

output:

14134819093

result: