QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#953963#5368. 异世界的文章分割者SunsetGlow95100 ✓2266ms20348kbC++202.7kb2025-03-28 09:27:552025-03-28 09:27:55

Judging History

This is the latest submission verdict.

  • [2025-03-28 09:27:55]
  • Judged
  • Verdict: 100
  • Time: 2266ms
  • Memory: 20348kb
  • [2025-03-28 09:27:55]
  • Submitted

answer

#include <bits/stdc++.h>
using namespace std;

using ll = long long;
using lll = __int128;
const int MXN = 50005;
const char BAS = 'a';
const int CHST = 26;
const int MXD = MXN * 2;
int N, K;
char str[MXN];
ll L(-1), R(1e18 + 105), diff[MXN];
int nxt[MXD][CHST], fail[MXD], len[MXD], fir[MXD], lst[MXD];
vector<int> son[MXD];

void dfs(int p) {
  for (int q : son[p])
    dfs(q), fir[p] = min(fir[p], fir[q]), lst[p] = max(lst[p], lst[q]);
}
lll calcv(int l, int r) {
  int slen(r - l), ndsz(0);
  static auto newnode = [&]() {
    int p(++ndsz);
    memset(nxt[p], 0, sizeof nxt[p]);
    son[p].clear();
    fir[p] = slen + 1, lst[p] = 0;
    return p;
  };
  int n(newnode());
  fail[n] = 0, len[n] = 0;
  for (int i(l); i != r; ++i) {
    int c(str[i]);
    int t(n);
    int p(n = newnode());
    fir[p] = lst[p] = i - l + 1;
    len[p] = len[t] + 1;
    while (t && !nxt[t][c]) nxt[t][c] = p, t = fail[t];
    if (!t) {
      fail[p] = 1;
      continue;
    }
    int f(nxt[t][c]);
    if (len[f] == len[t] + 1) {
      fail[p] = f;
      continue;
    }
    int a(newnode());
    len[a] = len[t] + 1;
    fail[a] = fail[f], fail[f] = fail[p] = a;
    memcpy(nxt[a], nxt[f], sizeof nxt[a]);
    while (t && nxt[t][c] == f) nxt[t][c] = a, t = fail[t];
  }

  for (int i(2); i <= ndsz; ++i) son[fail[i]].push_back(i);
  dfs(1);
  auto add = [](int l, int r, int s, int v) {
    s = min(s, r - l);
    diff[l] += s * v;
    diff[l + 1] -= s * v;
    diff[r - s + 1] -= v;
    diff[r + 1] += v;
//  cout << l << '+' << s * v << ';';
//  cout << l + 1 << '-' << s * v << ';';
//  cout << r - s + 1 << '-' << v << ';';
//  cout << r + 1 << '+' << v << ';' << endl;
  };
  for (int i(0); i <= slen; ++i) diff[i] = 0;
  for (int i(2); i <= ndsz; ++i) {
    add(fir[i], lst[i], len[i], 1);
    add(fir[i], lst[i], len[fail[i]], -1);
  }
  for (int i(1); i <= slen; ++i) diff[i] += diff[i - 1];
  lll v(0);
  ll w(0);
  for (int i(0); i <= slen; ++i) {
    w += diff[i];
//  cout << w << ',';
    v += static_cast<lll>(w) * w;
  }
//cout << endl;
  return v;
}

int calcp(ll lim) {
  int cnt(0);
  for (int i(0); i != N; ++cnt) {
    int plen(1);
    while (i + (plen <<= 1) <= N)
      if (calcv(i, i + plen) > lim) break;
    plen >>= 1;
    for (int d(plen >> 1); d; d >>= 1)
      if (i + plen + d <= N && calcv(i, i + plen + d) <= lim)
        plen += d;
//  cout << lim << ':' << i << ':' << plen << endl;
    i += plen;
  }
  return cnt;
}

int main() {
  cin >> N >> K >> str;
  for (int i(0); i != N; ++i) str[i] -= BAS;
  while (R - L > 1) {
    ll mid((L + R) >> 1);
    if (calcp(mid) <= K) R = mid;
    else L = mid;
  }
  cout << R << endl;
  return 0;
}

Details

Tip: Click on the bar to expand more detailed information

Subtask #1:

score: 10
Accepted

Test #1:

score: 10
Accepted
time: 1ms
memory: 7612kb

input:

10 3
aaaaaaaaaa

output:

6

result:

ok single line: '6'

Test #2:

score: 10
Accepted
time: 0ms
memory: 7768kb

input:

10 1
abbbaabbba

output:

289

result:

ok single line: '289'

Test #3:

score: 10
Accepted
time: 0ms
memory: 7764kb

input:

10 2
cacabbcbca

output:

11

result:

ok single line: '11'

Test #4:

score: 10
Accepted
time: 0ms
memory: 7764kb

input:

10 4
aabbccddaa

output:

1

result:

ok single line: '1'

Test #5:

score: 10
Accepted
time: 0ms
memory: 7768kb

input:

10 4
ababbbabab

output:

2

result:

ok single line: '2'

Test #6:

score: 10
Accepted
time: 0ms
memory: 7764kb

input:

10 2
ababbaaaba

output:

12

result:

ok single line: '12'

Test #7:

score: 10
Accepted
time: 0ms
memory: 7768kb

input:

10 1
baabaababa

output:

156

result:

ok single line: '156'

Test #8:

score: 10
Accepted
time: 0ms
memory: 7768kb

input:

10 10
hbjebnidnq

output:

0

result:

ok single line: '0'

Subtask #2:

score: 10
Accepted

Dependency #1:

100%
Accepted

Test #9:

score: 10
Accepted
time: 1ms
memory: 7632kb

input:

50 10
aababaaabaabaaabababaaaaaabbbababbaababaaaabababba

output:

17

result:

ok single line: '17'

Test #10:

score: 10
Accepted
time: 1ms
memory: 7764kb

input:

50 5
bbbaabbbbbaabaababbbbbbaaaaababbbaaabaaaaaabbabaab

output:

91

result:

ok single line: '91'

Test #11:

score: 10
Accepted
time: 1ms
memory: 5720kb

input:

50 5
adbabadbabadbabadbabadbabadbabadbabadbabadbabadbab

output:

412

result:

ok single line: '412'

Test #12:

score: 10
Accepted
time: 1ms
memory: 9808kb

input:

50 3
caaabcaaabcaaabcaaabcaaabcaaabcaaabcaaabcaaabcaaab

output:

3222

result:

ok single line: '3222'

Test #13:

score: 10
Accepted
time: 0ms
memory: 7600kb

input:

50 1
cadabcadabcadcadabcadabcadcadabcadcadabcadabcadcad

output:

407986

result:

ok single line: '407986'

Test #14:

score: 10
Accepted
time: 0ms
memory: 5716kb

input:

50 15
bbbbbbabaabaaaabaaabbaababbaaabababbbbaabaababaaba

output:

3

result:

ok single line: '3'

Test #15:

score: 10
Accepted
time: 0ms
memory: 7580kb

input:

50 20
baaaaaaaabbabbababbaaaabbabaabbababbbabbbabaaabaaa

output:

2

result:

ok single line: '2'

Test #16:

score: 10
Accepted
time: 1ms
memory: 7768kb

input:

50 6
ababbbbaaaaabbbabaabaaabaaabababababbaaaababbbbbab

output:

65

result:

ok single line: '65'

Test #17:

score: 10
Accepted
time: 0ms
memory: 7544kb

input:

50 1
aabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaa

output:

129389

result:

ok single line: '129389'

Test #18:

score: 10
Accepted
time: 1ms
memory: 7768kb

input:

50 1
acbcaabcababaacbbacaabcbacccbbaacaccbabccacaccaabb

output:

16446

result:

ok single line: '16446'

Test #19:

score: 10
Accepted
time: 0ms
memory: 7588kb

input:

50 14
ccaccaccaccaccaccaccaccaccaccaccaccaccaccaccaccacc

output:

6

result:

ok single line: '6'

Test #20:

score: 10
Accepted
time: 1ms
memory: 7764kb

input:

50 24
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

output:

2

result:

ok single line: '2'

Test #21:

score: 10
Accepted
time: 0ms
memory: 7568kb

input:

50 50
txcopptgjrvkgzdvaxgrhwgnkjfbspyytzkbirczhcrctddsfj

output:

0

result:

ok single line: '0'

Subtask #3:

score: 20
Accepted

Dependency #1:

100%
Accepted

Dependency #2:

100%
Accepted

Test #22:

score: 20
Accepted
time: 2ms
memory: 7632kb

input:

200 1
cabaababbabbbcabcbcaacbccaabcacbccaabbccccbcabbcacbbcbacbccaabbbbcbcabbacabbacccbbbbbacccabcccaaacbcbaaaccabbbabcaabbbababcabccbccbaaabbbcbccbbcacbbabbaabcacbcaccccccaaaccabbaaabbbcbbccbcabbbcabcccabb

output:

2192936

result:

ok single line: '2192936'

Test #23:

score: 20
Accepted
time: 2ms
memory: 7544kb

input:

200 2
cbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaacbaa

output:

1196175

result:

ok single line: '1196175'

Test #24:

score: 20
Accepted
time: 3ms
memory: 7768kb

input:

200 3
acabacbacacabacbacacabacacabacbacacabacbacacabacacabacbacacabacacabacbacacabacbacacabacacabacbacacabacbacacabacacabacbacacabacacabacbacacabacbacacabacacabacbacacabacacabacbacacabacbacacabacacabacbacac

output:

1550907

result:

ok single line: '1550907'

Test #25:

score: 20
Accepted
time: 2ms
memory: 9684kb

input:

200 7
hefdaadcdgfecghbgcbggfgdfchchgbdfafghahacgbbcebfchadbcechdacacccahggadbdacbggadbgceacgeedfafbhhfhaacdccefddbfaffcdggabhhcghcbfbedddeheaeaabdahhbhcefeededbfdafghdahcfbfbcbbdgccffhaeggcdhdcghghfaaefechd

output:

1134

result:

ok single line: '1134'

Test #26:

score: 20
Accepted
time: 2ms
memory: 7636kb

input:

200 11
lmmeigmkegfbcmhfedchmeckbnbgjlfljahjleeldlnkdlnkngaeiiblangdlkdfjchalckfhfcjgljlelebhfacafkjknknjjfklnhcnlgkkjmhfafmhehgehmejajabgaikfnclihbkmeckghfljgfmajflilgcimamgljlhjkfhgjcbcddfjlnchcgedmghdlfaib

output:

155

result:

ok single line: '155'

Test #27:

score: 20
Accepted
time: 1ms
memory: 7636kb

input:

200 19
cdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbaccdcccacbac

output:

133

result:

ok single line: '133'

Test #28:

score: 20
Accepted
time: 2ms
memory: 9684kb

input:

200 16
acdbddbaacdbddbaacdbacdbddbaacdbddbaacdbacdbddbaacdbacdbddbaacdbddbaacdbacdbddbaacdbddbaacdbacdbddbaacdbacdbddbaacdbddbaacdbacdbddbaacdbacdbddbaacdbddbaacdbacdbddbaacdbddbaacdbacdbddbaacdbacdbddbaacdb

output:

481

result:

ok single line: '481'

Test #29:

score: 20
Accepted
time: 2ms
memory: 7764kb

input:

200 25
abacdacdabacdacdabacdabacdacdabacdacdabacdabacdacdabacdabacdacdabacdacdabacdabacdacdabacdacdabacdabacdacdabacdabacdacdabacdacdabacdabacdacdabacdabacdacdabacdacdabacdabacdacdabacdacdabacdabacdacdabacda

output:

99

result:

ok single line: '99'

Test #30:

score: 20
Accepted
time: 2ms
memory: 7764kb

input:

200 25
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaadkgmivxnitlfmciurqeqnqghxveqrxidxbmzlpdveuucarjwdqyiiaegadulttqmkzinvxalbvnccchfvjechxnufmcmofrdkesmkjeiobfzwbppknslhtxoranwbjnxggudgjmjrigintzxkusvvaqwhuwvoyiz

output:

6

result:

ok single line: '6'

Test #31:

score: 20
Accepted
time: 2ms
memory: 7636kb

input:

200 37
aaaaaaaaaaaaabdecdebedebaaaaaaaaaaaaaaaacebcbcecaebeaaaaaaaaaaaaaebcddecebbebaaaaaaaaaaaaaaeadaaecdadbaeaaaaaaaaaaaaaccbabdbbeedaeaaaaaaaaaaaaadbddbebeddcbeaaaaaaaaaaaaaaceeedcecdadbaaaaaaaaaaaaaaaaaa

output:

10

result:

ok single line: '10'

Test #32:

score: 20
Accepted
time: 4ms
memory: 7632kb

input:

200 64
bbabbbaaaabababaabbaaaabbabbbaabbaababababbbaabbbbbbbbbabbbbabaababbbbabbbabbbaabbbbbaabaabbbbbbababbbabbaaaababbbbabbbaaaaaaabbabbaabaabaabbaaabbaaaaaabaabbbbaaaaabbababbaabaabbbbbabbbbababbbbaaabaab

output:

2

result:

ok single line: '2'

Test #33:

score: 20
Accepted
time: 2ms
memory: 5532kb

input:

200 49
abbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbabbab

output:

10

result:

ok single line: '10'

Test #34:

score: 20
Accepted
time: 2ms
memory: 7600kb

input:

200 57
zbizbizbzbizbizbzbizbzbizbizbzbizbizbzbizbzbizbizbzbizbzbizbizbzbizbizbzbizbzbizbizbzbizbizbzbizbzbizbizbzbizbzbizbizbzbizbizbzbizbzbizbizbzbizbzbizbizbzbizbizbzbizbzbizbizbzbizbizbzbizbzbizbizbzbizbz

output:

3

result:

ok single line: '3'

Test #35:

score: 20
Accepted
time: 2ms
memory: 7636kb

input:

200 44
aaaaaaacdaadaaaaaaabdbbaaaaaaaaaacbdaaaaaadccdcbaaaaaabdcdadaaaaaaccdabbaaaaaadcbaadaaaaaacdcdbaaaaaaabbcbdbaaaaaaabacbbaaaaaabcbccdaaaaaadbaabdaaaaaadaacddaaaaaaadcdbcaaaaaabbcdcaadbbdccdacdbcaccdbbd

output:

6

result:

ok single line: '6'

Subtask #4:

score: 20
Accepted

Dependency #1:

100%
Accepted

Dependency #2:

100%
Accepted

Dependency #3:

100%
Accepted

Test #36:

score: 20
Accepted
time: 13ms
memory: 7644kb

input:

1000 153
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

28

result:

ok single line: '28'

Test #37:

score: 20
Accepted
time: 20ms
memory: 7640kb

input:

1000 79
babacbbcacbbccccababbacbacacbbcabcabbaaabccbacbaacccaaaaabbcabaabcaaabccccbbaabbcaccaaacccbaaacaacccaccababaacbcbbacbcbbbcccbbcbaaababbcbacaacaccbcacaaccbbbcaabcaababbcbbabbccaccbccabaacbcacbbccbbcbaaccbcaacccacccccabbbabccacbbbbcaabccccacababacaccacbcccbcccbaccabaacbaccabbcbbacaabcbcacccaac...

output:

200

result:

ok single line: '200'

Test #38:

score: 20
Accepted
time: 20ms
memory: 7644kb

input:

1000 6
ahcfaddebbbccheeffbfdbbbdcjhdefhcibhgjbgeaigaaifcbdfbjdjiddicbhagggaaaajiejjjfdabcjjjceieaijacjbaecifacgdajcigfababaddecfehdhfbfjhdahchahiiiafaibdbbdegeachfdicciaegdcagaahgdgebdhbdejajafajjjfdjfjdijjgahjdjjjifeejjbachjaiacgjfhccebjgddjehiecibjfheicgihfdabhbdiijbcdgffaedcejecciddahjajdfjiddhgc...

output:

237763

result:

ok single line: '237763'

Test #39:

score: 20
Accepted
time: 18ms
memory: 7768kb

input:

1000 79
cfbdcgcdcdgabebecbbgcebcgefcbdageefffaddafegeabdagdaaabeaedgabgedafdegdggbedcceafgegbceceebaaadbccgadebeaeebcaggdbdgefeaeegafgbaeegaadbcaeddceecacbecdgfaefaeagdbaadbdfceedgdabfbaadcffgbedfgbbdddbcgdfccaeabbgabdfgefcefbaadefcfagebegfafbabfcbaagbedacfgffefadcdecbabbcfaegcgcddbagceaaaabcfacgfbe...

output:

91

result:

ok single line: '91'

Test #40:

score: 20
Accepted
time: 18ms
memory: 7720kb

input:

1000 3
htspasbnfsqdnsppbkaaprldgjpfaikdjcaojaejdtipsrkrfddlkepkqbjprsejnpcqigqjkmpqfhbbglccmtrrngoopfscopnocqkfesphqnteofsinkqqopnknbkejodkpnmjobgcisimpsgnqqidtfsdjakntlkgtgnnaietrijhgksrsnohilbrrtcpndciksonfptfkljhhisihcngqsdmgreakrrgmgnspabhfmegnmhtlhkrfnliipssjcbdikfgqmjtaltootaaopdrfrfrdaelnbrdd...

output:

1022595

result:

ok single line: '1022595'

Test #41:

score: 20
Accepted
time: 17ms
memory: 7640kb

input:

1000 14
jmgovzbodqoznwcmegtwxcunytkvnnoqixxjgbspvoochcctbmgfcofmdctzmpxwqwztunedfpvrdbbgujrmowvbahioiwnewuidqkajpxdkwckpmmbrkbrebgiqdktjgeaktrcgcaduslvxlpqofscjzmjmjyyzpvogthoglxsdvqpvcccfljopkcudctgxjovrppnbyzairtebpggtheutanrfalcsakvcreyxxchzalfaybwptnbulyteeuapgoscpzvigwetrjhtzxtgzhehhknztxhcvrbw...

output:

11558

result:

ok single line: '11558'

Test #42:

score: 20
Accepted
time: 13ms
memory: 7640kb

input:

1000 102
bacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaabacaab...

output:

384

result:

ok single line: '384'

Test #43:

score: 20
Accepted
time: 14ms
memory: 7764kb

input:

1000 11
dfbkbjdlafmdkfifefkbcblkmjhjhidabdhgcdfbkbjdlafmdkfifefkbcblkmjhjhidabdhgcdfbkbjdlafmdkfifefkbcblkmjhjhidabdhgcdfbkbjdlafmdkfifefkbcblkmjhjhidabdhgcdfbkbjdlafmdkfifefkbcblkmjhjhidabdhgcdfbkbjdlafmdkfifefkbcblkmjhjhidabdhgcdfbkbjdlafmdkfifefkbcblkmjhjhidabdhgcdfbkbjdlafmdkfifefkbcblkmjhjhidab...

output:

15796914

result:

ok single line: '15796914'

Test #44:

score: 20
Accepted
time: 16ms
memory: 7644kb

input:

1000 3
cmabiacablhoadfenghhdekggicmfkhennaifblffiofabfdkmlcklkndoiognhfihbocmabiacablhoadfenghhdekggicmfkhennaifblffiofabfdkmlcklkndoiognhfihbocmabiacablhoadfenghhdekggicmfkhennaifblffiofabfdkmlcklkndoiognhfihbocmabiacablhoadfenghhdekggicmfkhennaifblffiofabfdkmlcklkndoiognhfihbocmabiacablhoadfenghhd...

output:

6797306034

result:

ok single line: '6797306034'

Test #45:

score: 20
Accepted
time: 14ms
memory: 7764kb

input:

1000 1
deebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcabbaeeaadeebcab...

output:

13523081623

result:

ok single line: '13523081623'

Test #46:

score: 20
Accepted
time: 13ms
memory: 7768kb

input:

1000 176
ddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddcddcaaddc...

output:

15

result:

ok single line: '15'

Test #47:

score: 20
Accepted
time: 13ms
memory: 7600kb

input:

1000 176
dcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbdcbdbd...

output:

26

result:

ok single line: '26'

Test #48:

score: 20
Accepted
time: 19ms
memory: 5588kb

input:

1000 1
bbabaabbabaabbabbabaabbabaabbabbabaabbabbabaabbabaabbabbabaabbabaabbabbabaabbabbabaabbabaabbabbabaabbabbabaabbabaabbabbabaabbabaabbabbabaabbabbabaabbabaabbabbabaabbabaabbabbabaabbabbabaabbabaabbabbabaabbabbabaabbabaabbabbabaabbabaabbabbabaabbabbabaabbabaabbabbabaabbabbabaabbabaabbabbabaabbaba...

output:

674957710334

result:

ok single line: '674957710334'

Test #49:

score: 20
Accepted
time: 18ms
memory: 7728kb

input:

1000 27
aacabebebebeaacabebebebeaacabebeaacabebebebeaacabebebebeaacabebeaacabebebebeaacabebeaacabebebebeaacabebebebeaacabebeaacabebebebeaacabebebebeaacabebeaacabebebebeaacabebeaacabebebebeaacabebebebeaacabebeaacabebebebeaacabebeaacabebebebeaacabebebebeaacabebeaacabebebebeaacabebebebeaacabebeaacabebe...

output:

97930

result:

ok single line: '97930'

Test #50:

score: 20
Accepted
time: 15ms
memory: 7584kb

input:

1000 92
agddghjgdcdaagddghjgdcdaagddghjgdagddghjgdcdaagddghjgdcdaagddghjgdagddghjgdcdaagddghjgdagddghjgdcdaagddghjgdcdaagddghjgdagddghjgdcdaagddghjgdcdaagddghjgdagddghjgdcdaagddghjgdagddghjgdcdaagddghjgdcdaagddghjgdagddghjgdcdaagddghjgdagddghjgdcdaagddghjgdcdaagddghjgdagddghjgdcdaagddghjgdcdaagddghj...

output:

91

result:

ok single line: '91'

Test #51:

score: 20
Accepted
time: 16ms
memory: 7640kb

input:

1000 229
acabaacabaacaacabaacabaacaacabaacaacabaacabaacaacabaacabaacaacabaacaacabaacabaacaacabaacaacabaacabaacaacabaacabaacaacabaacaacabaacabaacaacabaacabaacaacabaacaacabaacabaacaacabaacaacabaacabaacaacabaacabaacaacabaacaacabaacabaacaacabaacaacabaacabaacaacabaacabaacaacabaacaacabaacabaacaacabaacabaa...

output:

6

result:

ok single line: '6'

Test #52:

score: 20
Accepted
time: 13ms
memory: 9884kb

input:

1000 387
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

1

result:

ok single line: '1'

Test #53:

score: 20
Accepted
time: 16ms
memory: 7636kb

input:

1000 79
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaautinovsqokcxceilfvzjuysmgbiyekhrjqvuhhncnpwdtvsyztzgtalquqtzfcvkwymtgamyvbgfzwdauxdetdjumnyi...

output:

107

result:

ok single line: '107'

Test #54:

score: 20
Accepted
time: 16ms
memory: 9852kb

input:

1000 15
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaeykkmvfmjxnnkseynhnyfbqpwwixbaaaaaaaaaaaaaaaaaaaaaaaaaaaaarpatbemszmhqxaxnyvkrdyqhbghuuaaaaaaaaaaaaaaaaaaaaaaaaaaaaayslipjklioorocacxthuhpczyttxgaaaaaaaaaaaaaaaaaaaaaaaaaaaaahakpigwtewvfeumzjluchidvlsfobaaaaaaaaaaaaaaaaaaaaaaaaaaaaazwzvxvonganwxwbacknxoaozsirfuaa...

output:

11461

result:

ok single line: '11461'

Test #55:

score: 20
Accepted
time: 17ms
memory: 5588kb

input:

1000 1000
lgugapptmavvpeohxdkunrtpzidgaokzvstjjgksmlbkmqsuymbcdjrwgeigyrxbepzxpjvqmdsotqfpkpxlhqimhsdmplvvnarlejkguqqdvuxexwnqmfvtbilpszuonxvkmqfejhjkhvswijpbjacbjutfrkkmzdryibkpzpzdkcdavvqyygpvzxtmpkqzapdreghjxogcvigztzpeecembjpvifgmnvreswaestowqvolqgwpvkvtgtiimgvhjegzuwdjdfhlectopiinmvkyckopyavyyv...

output:

0

result:

ok single line: '0'

Subtask #5:

score: 40
Accepted

Dependency #1:

100%
Accepted

Dependency #2:

100%
Accepted

Dependency #3:

100%
Accepted

Dependency #4:

100%
Accepted

Test #56:

score: 40
Accepted
time: 1999ms
memory: 18284kb

input:

50000 1
eaadcfedcbcceccfccdbbeccbcaeaaeffbbbecedddfacfdeaadbbebdcbaafcefedddbfdfbcdfbccbdcdcbccbebcbddfcdaacfefffbafcdfefabbecbcacdfcabbebedacdbcdfebbccfeecddcfbdfbebffafdbaeddcbbecfdbfaecbeeffcdfbceefeddfdadfadfadfeafaeddbccabebeaccadbfdfbedededecccbcdcafddefaefccbfbcdaeedfeaabdceafeaabcdabbceddecc...

output:

10929072780271

result:

ok single line: '10929072780271'

Test #57:

score: 40
Accepted
time: 1535ms
memory: 16268kb

input:

50000 1
gkhkjgfdaleeedqndpdmloccjpmfjccgljhflhdlponlqkmdeeipldediiocnmbqpemqqdpgjpmhccbalagqpndfkbpdmoegqqmogcbnnhhlbkgkaenqnoqelfoipclpadgppqmglmohdmeofgplpgclpkpgkpfggnkedcjoqfpbfffnqbmiaahhnkbacqgndchjkgknmgnhgbajnaahaeieqbcjjbhkqablmannnhhkcnlikjhikdjpeknpjgccbopfcgbaldjkckhdaopiifpojlomacnjkgod...

output:

3919799366097

result:

ok single line: '3919799366097'

Test #58:

score: 40
Accepted
time: 2019ms
memory: 16820kb

input:

50000 2
dywnjsdsqucmugwjznrryntujlauuycoadwemeamjhdfttkusnlddamdphpocuuyybnsjhqbopghiofjytxxkqeswozivewcmqhdaokbkjgkqfcccvcgjzoazunxmborqibfnyyhsrfvbldesvurxywquncvftcuazwzgdugsdtjlyzbxzeyzmqlvfjthnxujrcidjmvpwtcxjyiexqwqsqnrjxzwklygwhsshsxgxswyneojeualdftvjhwpmqbuwbtgidwfuvgqwcurpnrkfskoqkdzkbvfukc...

output:

445287879854

result:

ok single line: '445287879854'

Test #59:

score: 40
Accepted
time: 1222ms
memory: 16768kb

input:

50000 1
dcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddcccddc...

output:

260329176674704

result:

ok single line: '260329176674704'

Test #60:

score: 40
Accepted
time: 1661ms
memory: 16932kb

input:

50000 2
bdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceffeijdjhcbdceff...

output:

219715009632838

result:

ok single line: '219715009632838'

Test #61:

score: 40
Accepted
time: 1802ms
memory: 14748kb

input:

50000 3
nihabedjblqqhlepopnmkecpogjgbakpanbdnpenihabedjblqqhlepopnmkecpogjgbakpanbdnpenihabedjblqqhlepopnmkecpogjgbakpanbdnpenihabedjblqqhlepopnmkecpogjgbakpanbdnpenihabedjblqqhlepopnmkecpogjgbakpanbdnpenihabedjblqqhlepopnmkecpogjgbakpanbdnpenihabedjblqqhlepopnmkecpogjgbakpanbdnpenihabedjblqqhlepopn...

output:

582704337052667

result:

ok single line: '582704337052667'

Test #62:

score: 40
Accepted
time: 2266ms
memory: 14984kb

input:

50000 2
bpzeonrxhvmmwwkyfurffcakwgajxuqxdvfausbbokvavccmtoxsfswyyzdgklnfstlmzngwxdslkzxekqyuqjjhxudzbfectlxcxoeiwflxhkyvgbgmwsczpcguwobmfspabeutdfwqtsnryzhhtmlhpoaweuillzrepgogirppxbkktnbljrylwrpltsbinaekcvjlqgizbpzeonrxhvmmwwkyfurffcakwgajxuqxdvfausbbokvavccmtoxsfswyyzdgklnfstlmzngwxdslkzxekqyuqjjh...

output:

52863724029762619

result:

ok single line: '52863724029762619'

Test #63:

score: 40
Accepted
time: 1936ms
memory: 17132kb

input:

50000 14
dgeliicbdaaijggngndehgbnhiaajjkaalenhaceemblmildbbmlkngcekjhbcblbckiianfcihfndiijbjdhdkgbifdbegfnmghaakdgajbkehnkhcnfjfalcjkcemnkhdkkjmdamdmajgehnkkdnbedklndgfkagdaaljekjhfmnaedllnjmndlhifmnllkhebmjlhkfgjijkcjffbenemhjljmbgbjhngnjeafjlefjdfkbjefkkajfjidckbegeieifcfeghmjhmejhlclfihakkimkhnjn...

output:

1814156853

result:

ok single line: '1814156853'

Test #64:

score: 40
Accepted
time: 1699ms
memory: 17084kb

input:

50000 27
omokibdejmnllgbdqaaclogbqjdlmkplnfcmankchcboeqkjonlbbqihjiopffaejqlapfjjdpjfpqnlgdhniqpmcqmbnpgmfclanifoqneqnhnbeaoohqboqappchppnpbjompkbcnjqijmgnkddccoogaoablqlnfqecnqileeioabgpaemomojoghhboqaajgajdjjiiiomdhoijmgnpeqbmiilaqclhaonnmeojhmhnilqbqhpfjcklacldqbknomebghgeoqmjhqcnpeifiillbhhdeqqb...

output:

214605170

result:

ok single line: '214605170'

Test #65:

score: 40
Accepted
time: 2073ms
memory: 19192kb

input:

50000 62
beacebecdedbeddedededdecdadadcbeaedbbacbcdceadabbecaabecbcbaacddeeabdcebdaceaaaabacedabbedebeaacbeadadeadeeaccdeecbeadadebdeeaadcccceaaedbcceadebdeeeaddeddbcdecdaeacccdccecbeaaebcaedaaaccbbddbbceecbcdccdeddeccbbeacceaceabeeabeddeaababbbdbaebacdbdddeadecdddebcadeeaaddcdcdadceeabdcaccaeeecbed...

output:

56128859

result:

ok single line: '56128859'

Test #66:

score: 40
Accepted
time: 1278ms
memory: 16700kb

input:

50000 79
bmmcgfkldmhgimjemgohibnejggbmdadobmmcgfkldmhgimjemgohibnejggbmdadobmmcgfkldmhgimjemgohibnejggbmdadobmmcgfkldmhgimjemgohibnejggbmdadobmmcgfkldmhgimjemgohibnejggbmdadobmmcgfkldmhgimjemgohibnejggbmdadobmmcgfkldmhgimjemgohibnejggbmdadobmmcgfkldmhgimjemgohibnejggbmdadobmmcgfkldmhgimjemgohibnejgg...

output:

19534901514

result:

ok single line: '19534901514'

Test #67:

score: 40
Accepted
time: 1307ms
memory: 16984kb

input:

50000 96
bqkslaqndbqhefkdgcegkkmpffckokemicgfqdknbkaaqqaccqopghpkepcppemnrmcojlpaalboqcbqkslaqndbqhefkdgcegkkmpffckokemicgfqdknbkaaqqaccqopghpkepcppemnrmcojlpaalboqcbqkslaqndbqhefkdgcegkkmpffckokemicgfqdknbkaaqqaccqopghpkepcppemnrmcojlpaalboqcbqkslaqndbqhefkdgcegkkmpffckokemicgfqdknbkaaqqaccqopghpke...

output:

42964961476

result:

ok single line: '42964961476'

Test #68:

score: 40
Accepted
time: 1681ms
memory: 11000kb

input:

50000 88
cabbddbacabbddbacabbcabbddbacabbddbacabbcabbddbacabbcabbddbacabbddbacabbcabbddbacabbddbacabbcabbddbacabbcabbddbacabbddbacabbcabbddbacabbcabbddbacabbddbacabbcabbddbacabbddbacabbcabbddbacabbcabbddbacabbddbacabbcabbddbacabbddbacabbcabbddbacabbcabbddbacabbddbacabbcabbddbacabbcabbddbacabbddbacab...

output:

38369677770

result:

ok single line: '38369677770'

Test #69:

score: 40
Accepted
time: 1473ms
memory: 16440kb

input:

50000 103
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

4645311

result:

ok single line: '4645311'

Test #70:

score: 40
Accepted
time: 1443ms
memory: 18644kb

input:

50000 115
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa...

output:

3275390

result:

ok single line: '3275390'

Test #71:

score: 40
Accepted
time: 1734ms
memory: 18268kb

input:

50000 334
bgadgbafgghbjhdfddjcbfgcgbhaecajjhhbgbadiicbcdccjjhbcjdihidehdbgfhhjediaahecjdjehifbabhbcjfdbghfgigegchhdbhdgdchgjgcdfbjbcaiigfhgbjfaagjjgiihaiaeajjhhdfifhciebidabiefifhedcajfcbhdbceaggjaaedadhjhgigibbdhaficfcciaaefcbcdceddhihiiffadedgcdhdigijdebhchejabfgahehggafhacbhijbadhfceihfeeejfhghci...

output:

160984

result:

ok single line: '160984'

Test #72:

score: 40
Accepted
time: 1506ms
memory: 19256kb

input:

50000 453
rgyzchgqoskbomrmkyapwmpvgaynsjjvfmirllorsrgmlvwgzeiaorzhzkqyvldplrwjshxmtkwxfprbwxtxejpbbnignbijtafznifvdaitywznmvbdkpohisyabydkvsigplhuafuswlevunwladpvuqdcqxxkekyytgithubwhmxqxmmxfkmtctekslcpzbatzkdksognowpiizhfzzifwkjixndpskojfxyczmoroefnvizjsjfnnotkhtfyjwgmgoqtjtkyfbdvsjotnxsefqpahkaugr...

output:

38614

result:

ok single line: '38614'

Test #73:

score: 40
Accepted
time: 1117ms
memory: 16184kb

input:

50000 626
anbkiqksljdcjbmhpiaesdcrjfnipfspmlanbkiqksljdcjbmhpiaesdcrjfnipfspmlanbkiqksljdcjbmhpiaesdcrjfnipfspmlanbkiqksljdcjbmhpiaesdcrjfnipfspmlanbkiqksljdcjbmhpiaesdcrjfnipfspmlanbkiqksljdcjbmhpiaesdcrjfnipfspmlanbkiqksljdcjbmhpiaesdcrjfnipfspmlanbkiqksljdcjbmhpiaesdcrjfnipfspmlanbkiqksljdcjbmhpi...

output:

8946471

result:

ok single line: '8946471'

Test #74:

score: 40
Accepted
time: 1063ms
memory: 16628kb

input:

50000 875
adgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjaggadgbggbjiedhfjagga...

output:

1508468

result:

ok single line: '1508468'

Test #75:

score: 40
Accepted
time: 1427ms
memory: 10976kb

input:

50000 710
acadbaccacadbaccacadacadbaccacadbaccacadacadbaccacadacadbaccacadbaccacadacadbaccacadbaccacadacadbaccacadacadbaccacadbaccacadacadbaccacadacadbaccacadbaccacadacadbaccacadbaccacadacadbaccacadacadbaccacadbaccacadacadbaccacadbaccacadacadbaccacadacadbaccacadbaccacadacadbaccacadacadbaccacadbaccac...

output:

1895757

result:

ok single line: '1895757'

Test #76:

score: 40
Accepted
time: 1857ms
memory: 17356kb

input:

50000 1335
ebadcedecceabbdacddbcbbdbbccdbdcaaddbaeecbecabcabdcbdcbcdbdcccabbbaecdbcaeaaeadbabacdbaecccecedabdeaadbaaeeaedacaecebabecbbccebeeceecbbecbacacaebbccbecbcbddedadcabaaeeecbabadceeeeccaedbeaeddaecabcddbeaabcdeedcacecdebddbbbbbbdbbcbebccadbdacdcdbceeadbdeadcbaadaeecebbecdaaaebbbcbadaebbdcdabe...

output:

4248

result:

ok single line: '4248'

Test #77:

score: 40
Accepted
time: 1608ms
memory: 19636kb

input:

50000 3526
ghfjgjajgiafjjgjfgicedjeaiicceighggccddcegfgcagbffeagjcfjbbdehajdahejcedgiifacbbdhhbdacgbjggheihahgabjjaajdeehdgigjeggfedhfcehafbeibeebefjgaijahgibiebbedjcajahdhehgcdceafhfeafbcgajhffeadabfhdcebjcbcchjfhafajhhjdigechhfbhbgbdbgdcdjcaddfiedicbjigiiejafdhdfbdabfhcbaahadaijgbgdjgjdbjihfehgbhi...

output:

88

result:

ok single line: '88'

Test #78:

score: 40
Accepted
time: 1063ms
memory: 16968kb

input:

50000 3526
dfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjadfbcfgfgagjad...

output:

303

result:

ok single line: '303'

Test #79:

score: 40
Accepted
time: 1271ms
memory: 11300kb

input:

50000 4428
bcccbabcccbabccbcccbabcccbabccbcccbabccbcccbabcccbabccbcccbabcccbabccbcccbabccbcccbabcccbabccbcccbabccbcccbabcccbabccbcccbabcccbabccbcccbabccbcccbabcccbabccbcccbabcccbabccbcccbabccbcccbabcccbabccbcccbabccbcccbabcccbabccbcccbabcccbabccbcccbabccbcccbabcccbabccbcccbabccbcccbabcccbabccbcccbab...

output:

330

result:

ok single line: '330'

Test #80:

score: 40
Accepted
time: 1048ms
memory: 15752kb

input:

50000 5074
abbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaabbaa...

output:

269

result:

ok single line: '269'

Test #81:

score: 40
Accepted
time: 2084ms
memory: 20348kb

input:

50000 26013
abaaabbabbbbbabaaaabbababaaaaaaabababbbbababbabbabaabbaaaaaabbabbbabaaabbababbbaabaaaaaaababbababbbaaabababbbbabaaabaaabaabaababbaaaaaaaaababbbbaabaabababbbbbbaaaabaaaabaaabbbaaaababbaaabbaabaaabbbaaaabaaabbbaabbbabbaaabababaaaaabbabbaaaabbaaabbbbbabbabaaaababbbaaaabbbaabbbaabbbbabbaabaa...

output:

1

result:

ok single line: '1'