QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#416767#5254. Differencesgalen_colin#AC ✓1839ms58496kbC++172.6kb2024-05-22 06:54:322024-05-22 06:54:32

Judging History

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

  • [2024-05-22 06:54:32]
  • 评测
  • 测评结果:AC
  • 用时:1839ms
  • 内存:58496kb
  • [2024-05-22 06:54:32]
  • 提交

answer

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

#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")

using ll = long long;
using ld = long double;
using pl = pair<ll, ll>;
using vl = vector<ll>;

#define f first
#define s second

ll n, m, k;

bool bad[100005];
using ul = unsigned long long;
vector<ul> bs[100005];
ll sz;
bool vis[5005][5005], rs[5005][5005];

mt19937 rng(53);

bool cmp(ll a, ll b) {
    if (a > b) swap(a, b);
    if (n <= 5000) {
        if (vis[a][b]) return rs[a][b];
        vis[a][b] = 1;
        ll ans = 0;
        for (ll i = 0; i < sz; i++) ans += __builtin_popcountll(bs[a][i] ^ bs[b][i]);
        // cout << a << " " << b << " " << ans << " " << k << endl;
        return rs[a][b] = (ans == k);
    } else {
        ll ans = 0;
        for (ll i = 0; i < sz; i++) ans += __builtin_popcountll(bs[a][i] ^ bs[b][i]);
        // cout << a << " " << b << " " << ans << " " << k << endl;
        return ans == k;
    }
}

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

    cin >> n >> m >> k;
    k *= 2;

    sz = (m + 15) / 16;

    for (ll i = 0; i < n; i++) {
        string s; cin >> s;
        bs[i] = vector<ul>(sz);
        for (ll j = 0; j < m; j++) {
            ul v = 1 << (s[j] - 'A');
            bs[i][j / 16] += v << (4 * (j % 16));
        }
    }

    ll s = n;

    vl a(n);
    iota(a.begin(), a.end(), 0);

    vector<pl> lv;

    const ll K = 30;

    while (s > 1) {
        // cout << s << " " << a.size() << endl;
        ll x = -1, y = -1;
        if (!lv.size()) {
            x = rng() % a.size();
            while (bad[a[x]]) x = rng() % a.size();
            x = a[x];
            y = rng() % n;
            while (x == y) y = rng() % n;
        } else {
            y = lv.back().f;
            x = rng() % a.size();
            while (bad[a[x]] || a[x] == y) x = rng() % a.size();
            x = a[x];
        }

        if (!cmp(x, y)) {
            if (!bad[x]) {
                lv.push_back({x, K});
                --s;
            }
            if (!bad[y]) {
                --s;
                lv.push_back({y, K});
            }
            if (lv.size() && y == lv.back().f) lv.back().s = K;
            bad[x] = bad[y] = 1;
        } else {
            if (lv.size() && y == lv.back().f) {
                if (--lv.back().s == 0) lv.pop_back();
            }
        }

        if (s * 2 <= a.size()) {
            vl b;
            for (ll x: a) if (!bad[x]) b.push_back(x);
            a = b;
            s = a.size();
        }
    }

    cout << a[0] + 1 << '\n';
}

详细

Test #1:

score: 100
Accepted
time: 1479ms
memory: 52440kb

input:

3585 4096 2048
ABBBBBBAABAAAAAAAAAAAAABAABABBBABABAAAAABABAAAABAABAABBABBAABAABABBABAABBABBABABABBAAAABBABAABBBBABBBAABBBBBABAABAAABAAABBBBAAAABAABAABABABABBBBBABAAABAAABBAABABBABAABBAABBAABABBBBAABAAAABAABBABAAABBAAAAAABAABBABBABAABABBBAABABBABABBBAAAAABBBABABABBAABAAAABBBBABABAABBBABABABBAABBBABAB...

output:

1397

result:

ok single line: '1397'

Test #2:

score: 0
Accepted
time: 1744ms
memory: 58036kb

input:

4099 4100 2
ABABBAAABBBABBBAABAAAAABABBBBBAAAAABBABBBBABBAAABBAABAAAAAAAAABBABAABAABBAAABAAAABBAABBBBABAAABAABABBAAABBBBBABABBBBBABBABBAABBBABAAABBABBBBAAAABAABBAABAABABABAAABAAAAABAABABBBAAAABBBBBBBABBBAABABBABABBBABAAAAABBBBABAAABABBBAABBAABBBABBABBBABBAABABBABBBBABBBABAABBBAAABAABAABBABAAABABABAB...

output:

2964

result:

ok single line: '2964'

Test #3:

score: 0
Accepted
time: 69ms
memory: 57740kb

input:

4002 4096 2048
ABBBAAABAABBBABBBBABBBBBBBAABBABBBAABABBABBABBABBAABABBBBBAAAAABBBBBBAAAAAABAAAABBBABABAABBBABABAAAABBAABAABABBBABBBBABAAAABBBBBBABBBAAABABBABABAABBABAAABABBABABABAAAAAABABAABABAABBAAAABAAAAABBABAABBAAAAAAABBAAAAABABBABABAAAAABBABBBBBABABAABABBBAABBAAABBBBAAAAABBBBBBBABBBAABBAABBAABBB...

output:

3926

result:

ok single line: '3926'

Test #4:

score: 0
Accepted
time: 1671ms
memory: 56948kb

input:

3892 4096 3072
CCBACBACABCBBCDBDBBDDABDADCDCCAABAAADADDCBABABACAACCADDDAAACBCDACCBDBCCCACACBBBCADBBDBABDACAABADBBBADADADBAADBCCDBDAADCCBDCBDBAACAABDABDAADBBCDDCADDBBDBDBDDBBDACCCCACBACCBADDCCDCDCCACBCDDCDCCCADCDDAADBBDABAADBDDDACBDBDDDBACDAABBBDDABACAACDAADBBBCDCCCAAAADDCBDBBCBDDADCAACCAABBCCBDBABCB...

output:

2870

result:

ok single line: '2870'

Test #5:

score: 0
Accepted
time: 1839ms
memory: 58036kb

input:

4099 4100 2
CCCDDBDBBCADADBBACDCDDBACCDABADCDDDDBCDDABABDBCCCBCCCDDDCBAABADABDBCABDBDDDCBBCABCCBBDCDBCDCBCCCBABCCBABCDBBAABADCAACBBDDABBBDDBCBDDCCDCADDDBCBBDABCBDBCCCACCADBBDDDCBDCDACCCBCBBDADAAACDADCDDCAACADDCDBDDBBBBCDAADDAADDDDADDCCDCBDDBAACABDADCACAABCCAAACACBCDCBBAABCAACCCDABBDBCDABBDBCCCADBCAA...

output:

2128

result:

ok single line: '2128'

Test #6:

score: 0
Accepted
time: 72ms
memory: 58264kb

input:

4043 4096 3072
CADABDBABCBCDDDCABAAADCDBDDBBDCCBAAADCDCCBDAACABDBCAABCDADCCCACDBBABABCCDCCACDDABDADBACCBBCBDBABDCBBADADCBDDDDDDCBABBDCAABBCDBADBDCDBDBCBDDCABBDBCDCADABDDBCACABDCCBCADBBDCDCDCAAADBADADCCDDDADDAABDDDCDBCCBCAABDBCBACACCADDCBBCBCDACCCCCAAAAAAADDABBBBABADCAAADCAAADACCBBACBCABDDDDBCABDABAC...

output:

3952

result:

ok single line: '3952'

Test #7:

score: 0
Accepted
time: 33ms
memory: 33532kb

input:

2188 4100 1458
ABACDBABBDDDACBCBCBADACCCCBADBCBDBBCDBDADDBDBDACADABBBCBBAAADCDACADDCCDBADBDBDBBDCBBDDBBCDABDBCCCBDBADAABCADCCDDAACCADABABCADCCDCABCADBCCABADBCADAAAABDAACBAAADBCBBBBDDBCCCBCADDBDDBCADDAACACDDBDBCDCDBCDDBBCADDADDADCDDCDCDCAAADAAACDDABBCDCBDACCDACACCCACABDDCCCDCABACAAACCDABBDBCBDBCCBCAA...

output:

2090

result:

ok single line: '2090'

Test #8:

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

input:

85 96 48
AABAAABBABABBAABBBABABBABBBAAAABBABBBAABBBAABBAAABBBABABAAAABBAAABABABBBABAAAABBAABAAABBAAAABAAB
AAAABABAAABBBAAAAAABBBBAABBABBBBABAAABABAABAABAABBABABBBABBBABBBABBBBABAABBABABAABBBABAABBAAAABB
AAABBAAAABBBAABBBAAABAAAAABAABABAABABABBABBAABBBAABABABBBBBABAAABBBABABBBBAAAAABAABBAAAABABBABAB
...

output:

10

result:

ok single line: '10'

Test #9:

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

input:

99 100 2
DBCBDACCACBBBBCACCDABADCAADDBACBBADABACCCBDADCABBABDAACDBCBDBBDCCBACDDDBBACBABDCDDBCCCBBBBCBADABABDA
DBCBDACCACBBBBCACCDABADCAADDBACBBADABACCCBDADCABBABDAACDBCCDBBDCCBACDDABBACBABDCDDBCCCBBBBCBADABABDA
DBCBDACCACBBBBCACCDABADCAADDBACBBADABACCCBDADCABBABDAACDBCBDBBACCBACDDABBACBABDCDDBCCCBBB...

output:

2

result:

ok single line: '2'

Test #10:

score: 0
Accepted
time: 1ms
memory: 6096kb

input:

10 3 1
BAA
ABA
BAA
ABA
ABA
AAA
BAA
BAA
BAA
AAB

output:

6

result:

ok single line: '6'

Test #11:

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

input:

73 81 54
CABCABCBBABABCBCAABCAACCCBBCBAACBBCABABAABCCCBBAABBBACCABABACBBCCBACBCBCCACCBCCBC
AACBABBBBBCCBCCABCBBABBABCABAABCACBBAAABCCCBACBCABACCAABBBACCACACCACBBBCAABBBBABB
AAABCBAACABAACABCCABCACCCBACBACACBACCACBBCCAABACBCAACAAACBBBBABACAABAACCABCBCCBCC
CABCCAACCBACACBCCBBCABAABBCBBBCBABBBBCBCBBABB...

output:

69

result:

ok single line: '69'

Test #12:

score: 0
Accepted
time: 56ms
memory: 48508kb

input:

3457 4000 1728
CCAACADCBBBBCBDABADACDDCDACBDBBDDDDACCADAABCDADABDAAAADBCDABCDBBCADBDCBCACCDCDCBBABCAAACCCBBCAAADBCBADBBADAACCBDAACAACBBBBBDDCCACCDCBDADCBDBABBBACDDACCDDBCCDCACBCCDDCDBBCCBCCADCACACDCCCDBBBCBABCBACDBDAABCDCDBDBAADBDCCBBCDAABABBDDCCACCCAACDCBBBBADCDACCCDBBAAADBDBBBBADBCABDBCDCAAACBBBBA...

output:

2626

result:

ok single line: '2626'

Test #13:

score: 0
Accepted
time: 64ms
memory: 58108kb

input:

4097 4096 2048
CBABCCBCBCCBACCAABABACCCBACBCBABACAABAABBCAABCABCCCBCABCAABABCCCCACCCCAACAACBABBBABCAABBAACBCABBBBBBBBCACBCACABBABBBCCCBBBBBACABCCCBCCABCCCABBACBCAABCCABAACCBBAAABCBACBCCBCCCCCCBABABBBCBACCCBCABBAABBBAAABBCCCAACBBCCBCBBABACAABCBABBCBABCCCACBCCACBBBBCAAABAABBBBABACCCABBAABCAABABAABBCCA...

output:

3851

result:

ok single line: '3851'

Test #14:

score: 0
Accepted
time: 70ms
memory: 55688kb

input:

4041 4096 3072
CBAADCADBDCDAAACBDCCCBAAADBBCDDCBBABCBCDBAACDAAABDCCBADBDBBDCCBADACADABBBCCADCDDDDAADBCCCDAAAAADABCCBCDABCDCCDADBDCBCCCABCDCBDCDDDADDDCBACADBCAADDADBBBCAACDDCBCCDDBBBDBCCDABADBDBADCCCBABCDDCCCABDDDDBDDBBCBBBCCCDDDBCADCBDDBABBABCDDAACDBAABAADAACCBDBDCBADABCDDCADADBDACDDDAAACABDBBACDABB...

output:

2649

result:

ok single line: '2649'

Test #15:

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

input:

4000 4000 1
DBACDACCAADCABCCBAAACADACCDCBDCBADAAACCACBDDDBBACCAACABADADBDCCDCCDCBCDAADDDBBDDDAABBBCACCBBAABDCBBDABDAADDBADADAABBCACACDCDDACCBDCBACCBBCCBBCBCDDABDCCBCABCADBCDDAABCBDADACCCBBBBDBACDCDABADCCDBDDDCBCDADCDBDBDBABBDAACBBCADBABBDADADCBCAAAABABCBCBBDACACDAADBBDCBABDCDACAAAACDBBADABCBABBABDCB...

output:

175

result:

ok single line: '175'

Test #16:

score: 0
Accepted
time: 25ms
memory: 49012kb

input:

4000 4000 10
AAABABBABBBABBABBBBABBAABAABBAABBABBBAABABABBAAABABBBAAAAAAABABABBBBAABABBBBAAABABBABBBABAABAABABBAABAABAAAAAAABABBBABAABABABBBBBBBBBAABABAABAABBABBBBAAABAABBAABBBBBAABBBAABAAAAAAAAAABABBBBBAABABAAAABBBABAABBBABBBBABBBBABAAAAABAAABABBBAABBBBABBABBBBABABABBAABBABAABBBABABBBBABABBBABABBBB...

output:

3594

result:

ok single line: '3594'

Test #17:

score: 0
Accepted
time: 24ms
memory: 49272kb

input:

4000 4000 1000
CBBBBDADDBBACBACCACDAACCCBBCDABADDDCAAACDDADDABBACCCCDADCACDBDCADDACBAABCCABBCDCBCADDBDCABCBCABBDBDBAABBBDCCCCACCADBCDCDBBADACABADDCDDDCCBDCBAABBCADDBCABCDBBDDBDCDAACACAADABCBCDDADCDDCCDABDDADCACCDBBCAAAAAACDDDBDCBABBAADDDDCDCDABBABBBCBDBADBBCDDCAADCBCBADCCBAADABAABCDCCBCDCBDACACABCBB...

output:

440

result:

ok single line: '440'

Test #18:

score: 0
Accepted
time: 16ms
memory: 12468kb

input:

100 100000 10
ABBABBBBAAABBAAAAAABAAAAABBABAAABBBABAAABABABABBABABBABABAABABAABBBABBABBBBABABAAABAABAABBAAAAABABAABABAABBAABBABBAAABAAABBBAAAAABABAABAABBAABBBABBBBAAAABBABAAABBBBABAAAAAABBAABAABBABBAAAABAAAABABABBBBAABABBAABBBAABABBBAABBBBAAABBBAAAAABBABBBABAAAAABBAAABAAAABBBABBAABAAABABBBBABBBAAAAB...

output:

65

result:

ok single line: '65'

Test #19:

score: 0
Accepted
time: 24ms
memory: 12620kb

input:

100 100000 10
CABDDDBBBCBBDACDBCADDDCACBBBBBDDBBDAAACCDDDDACDBADBDDDABBBDDCDCDABAACDCCDCBDBABBADBDDBBBCAABDDBDACADBDBABCACDCAACBDBDBCCBCDBBABCCBCAADBCCBBCABCCDBACDCABBDCDADCDBADCDAACCCADDCCDACBDBCADCDDCDBCACBDCCAAACBACDCBABDACBACDABCDDAABCDDAAABCBBBBACBBCBADCDDDABCACDBADBBDCCCAADBBCDCABDAACADDCCDABB...

output:

44

result:

ok single line: '44'

Test #20:

score: 0
Accepted
time: 26ms
memory: 12800kb

input:

100 100000 100
BBABBAAABAABBBBAABAABAAAABAABBABAAABBAABBABAABBBBAABABBBABBABABBBBBBABBBAAABBAAAABBAABABBABAAAAAAABABABAABBABABABBBAABBABBBBBBBAABAABBAABABBBABABABABBBBAABAABAAAAAAABAAABBBABAAABBAAABBAABBBABBAABBAAAAAABBBBBBBABBABABBAAAABABAABABBBBBAABAAABAABBABABAAAAAABBBAAAABABBBAABBBAAABAAAAABABAB...

output:

86

result:

ok single line: '86'

Test #21:

score: 0
Accepted
time: 22ms
memory: 12864kb

input:

100 100000 100
CDDABDACADCADADABADDADADDDDCBAAAAABBABABBCBADBABCAADDBCCABBCCCCCCAADBAACDCDCAAACAABACADDBABACACBACBCCBBCAABABBCCCACAABDCCBCBBADCDABCCCACDBCACBCACBBDDABBBACDBBCABDCABDCBABCDDAABCBABCCCDCBDDCCAABCADCCBCADCDACBCABDCACCCDCCCACCBBDBDBCCCBABBDCADAACACADCCBACDCAACBAAACCBDDDCCDCDDAACADADBABAD...

output:

7

result:

ok single line: '7'

Test #22:

score: 0
Accepted
time: 33ms
memory: 11816kb

input:

100 100000 1000
AAAABAABBBABAAAAABBBAABABABABAAAAAAABBBABAABBAABABBAAAAABBAABAAABBAABABAABAAABAAABBBABBBAAAAABABBAAAABABABAAAABBAAAAAAAAAAABABABBBBAAAABABAABABABAABABBBBAABBBBBABABBBABABAABAAAABABABAAAAAABBABAAAAABABBABBAAABAAAAAABAABBBBBBAABAABBBBBBAAAABAAAABAABAABABABAABABBABAABAABAABBAAABAAAABAAA...

output:

20

result:

ok single line: '20'

Test #23:

score: 0
Accepted
time: 20ms
memory: 12684kb

input:

100 100000 1000
CDAAAAABCACBBAADADADDDCDDABAADDDCADDBAAABCBDDCCACCABBDBBDCCACCDBCDADDBDBAAAADCABBBCDAABACDBABBBDACDADCBDDBDCAADBBCBCCCCBBDCCADCBCBCBADBDBBBCBCDDABBDDDAADCDACCCAAACAAADBBBADDACDBDCADDBCCADBDBCDBADCBCACAACDABCBABBABCCDDCACDCBBDADADDDDDBDACBBDDCDABCDBAADACBBBCBCCBBCBCBBBDCACBDDDCCACCACB...

output:

68

result:

ok single line: '68'

Test #24:

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

input:

100 100 1
BBBBBAAAAABABAABABAABABBAABABAABAABBABBBABBBABBABBBAABAABBBBABAABBBABBBBBBBBBAAAABBBABBABABBAABBABAA
BBBBBAAAAABABAABABAABABBAABABAABAABBABBBABBBABBABBBAABAABBBBABAABBBABBBBBBBBBAAAABBBABBABAABAABAABAA
BBBBBAAAAABABAABABAABABBAABABAABAABBABBBABBBABBABBBAABAABBBBABAABBBABBBBBBBBBAAAABBBABBA...

output:

68

result:

ok single line: '68'

Test #25:

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

input:

100 100 2
CCBAACBBACAAABCBAABACBBBABBCAABACBBCBCACCACACACABBABBBABACAACABCBABBABABABCACCBCCCBACBBAACBBBACACACC
CCBAACBBACAAABCBAABACBBBABBCAABACBBABCACCACACACABBABBBABAAAACABCBABAABABABCACCBCCCBACBBAACBBBACACACA
CABAACBBACAAABCBAABAABBBABBCAABACBBABCACCACACACABBABBBABACAACABCBABBABABABCACCBCCCBACBBA...

output:

47

result:

ok single line: '47'

Test #26:

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

input:

100 100 60
ABBBAAACABCACBDADBBAABAAACDDDDBBCCBCBAADDCCBCBBCDBDDBBBDBABBCBDACCCACBAABCCDBBDCCACBDBCBBCBCADDACBAA
CDCABBBABCBADBCCDABCCAADBAAADACCBCDDBDCBDCBCBAADCABCDCBCCDCBBBDBABDBABBDBDCADDACABADBBACCCDCCADDABDC
DDABAADCBABCBDBCDABDCCCDDAABDCAACBBCDBBACDDCBABDCBABDBBBCAAACCDABBDCCBCACACDABDACBCDDBB...

output:

86

result:

ok single line: '86'

Test #27:

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

input:

100 10 5
CCCCCACABA
AACCCBBBAC
ACBAACBBCB
CCBCCACCBB
CBBCCCABAB
ACACACBBCC
CCCCABCACB
ACBCBAAABC
AACCBCCBCC
AABBBAABBB
CCCCABCCCB
ACABBCCBCB
ACACCCCACC
ACCBBCBACB
BAACAAAACB
ACACBAACAA
ACACCACABC
BCCABACBCC
BCBBCCABCA
ABCBCACBBC
AABCBAACBB
ABCCBAAABC
BCACBCAACB
ABCCBABCBB
ACAAAACCCB
BBCCCABAAB
ACBCC...

output:

68

result:

ok single line: '68'

Test #28:

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

input:

10 100 4
AABBBBBAAAAAAAABABBABAABBAABBBAAAABBABABBABBBABBABABAABBBABAAAAAAAAAAABBBBBBBABABBBAABBBBBBBAABBBBAB
AABBABBAAAAAAAABABBABAABAAABBAAAAABBABABBABBAABAAAABAABBBABAABAAAAABAABBBBBBBABABBBAABBBBBBBAABBBBAB
AABBBBAAAAAAAAABABBABAABAAABBBAAAABBABAABABABABAAAAAAABBBABAABAAAAAAAABBBBBBBABABBBAABBBB...

output:

10

result:

ok single line: '10'

Test #29:

score: 0
Accepted
time: 585ms
memory: 47480kb

input:

3456 3456 1728
DBBADABACACBACADAACBABDDABADDDDBAAACDDCAACBBCCDCDDDACDADCBBBBBBABDCDCCABCCDAABDBBDADAACCCBCCCBDCACDADABBCDBBBBAADDADADBCABCCABCAACBADDBABDABCCABDCADBADDBACDCADBDBBACCCBBABBBDDDADDDBCCDBADCABDBCBCDDBDACCCDCBDDADCCBBCBBAADBBCBAADABBABBCCCACCBBCDADDDADCDBABBBACACBBDABCBBCCCDACBAABACCADAA...

output:

1330

result:

ok single line: '1330'

Test #30:

score: 0
Accepted
time: 800ms
memory: 58496kb

input:

4096 4096 2048
BABBBAABABABAABAAABAAAABBAABBABBBABBABABABAAAABBBBABBABABAAABABAABBBBBABBAAABAAABBAAABBABABBABAAABAAAAABBAABBBAABBBBBBABBAABABAABBAAAABBBAABABAABABBABABBBAAABAAABAAABABAAAABBAABABABABABAAABBBAAAAAABBBBABBBBAAABABABBAABBAABAABBABABAAABBAAABBBBABBBAAABAABABBBBBABBAABABABABABBAABBAAAAABA...

output:

2121

result:

ok single line: '2121'

Test #31:

score: 0
Accepted
time: 707ms
memory: 58452kb

input:

4096 4096 3072
CDDDABADADDDBBCCDADBDAABCADCDAADDADDBDCDACCDDDAADCAAACACBDDACABCCCCCAACBCDCBDDCBDBBDCDCCBCABCBDBCCABBAACAADBADBBADDCCBDBADBBCCBCBDAACAABBCDBAADCADBCABADCABDBAACDDBDBDCABACDDDBBBDBBAAABAAADABDAAABABBAACBAABADBDBBADDABDADABBDDAACCBCDCDDBBDBDADBADBBACCCDBBCBCDCACADAABBAACCCABCDDDAACDBAAC...

output:

2705

result:

ok single line: '2705'

Test #32:

score: 0
Accepted
time: 817ms
memory: 58464kb

input:

4096 4096 3072
ADCABDBCBDDADDDBBDCCDAABBCBDCDBCCBABBACBADACCDABCCDBDCDCBBBDBCBDDAADCCCACBCDBBABADCAADBBBDADCCADCDDADAABADDCDBCCBBADBBACABDDACACDBDAAAADBACCADBCCBCBACAABCAAABBDCCBBCCCABDBBDDABAACCACCBCADDACAAAACCABDADAABACDADDDBCBBADDDABCDDADDCBBCDBBBCDAACBADADBDABABBDCAACADBCCCABDCDCDABCDBDCAADDBDAA...

output:

2670

result:

ok single line: '2670'

Test #33:

score: 0
Accepted
time: 1632ms
memory: 54560kb

input:

3863 4096 3072
DADABACDDDDBACDABBBDDDAADCAABBBBACDAADACAABDDABACDDDDDABDCBBBCCDADDABBCCDCACACACAADBDCBCBDCACCACCCAACABDBCBACAABAADABDDACCABABDACBBADDDADAAAACDACAABDDCDBBCBDCDBAADBCBCBABDADCABABDBADBCDBADCDDDACACBCABDBDBBAADCDDDBCDBBCCBBBDABBCACCABCCCBABAAADDDDBCDDCDCBACCCDDBBCBADBACBBDBBADDCABBCBBAB...

output:

3572

result:

ok single line: '3572'

Test #34:

score: 0
Accepted
time: 1501ms
memory: 52480kb

input:

3585 4096 2048
AABBABAAABAABAAABBBBAAABAABBABBBABAAABBBBAABBBAAAAAAAABABABBBBAABBAABAAABBBABBBABAAAABABABBABBBBBAABAAABAAAAABABABABABBABBABBAAAABBABBBAAABBABBBABABBBABAABAABBABBBBBBAAABBBAABABBABBBAABBBABABBABBBBBBAABAAABBAABAABABBAABBBBBABAABBBBABBABAABBABBBBBBBBBBBBBBBABABABBABBABBBBAABAABBBBBAAAA...

output:

444

result:

ok single line: '444'

Test #35:

score: 0
Accepted
time: 1222ms
memory: 44396kb

input:

3073 4096 2048
BAABBABABBBBBABABBBBAABAABAAAAAAABBBBAABAABBAABAAAABBAABAABBBBABBBBBBAABAAAABBABBBBAAAABAABAAABAAAAABABBBBABAAAABBBBAAABBABBBBBAAAABAAAABBABAAABBBBBABABABBBBAAAAABBBAABAAAABBABAABABBBBABBABAABBAAAAABBAABBABABAAAAABABBBBBBABAABAABBBBAAAAAAABABBBAAAAABAAAABAABABBBBBBBBBBBABBBBBBBABBBAAB...

output:

2584

result:

ok single line: '2584'

Test #36:

score: 0
Accepted
time: 1636ms
memory: 49852kb

input:

3515 4096 3072
CDDBBBDABCDABBADBBBCADDDABDBBAAADCBBDDAACCBCBDCABBBBDCBADACDAACBCCCDBDDAADBAAADABDCABBABADDCBBBBCACBDDCBCABCCBDDCCDBBCAAADBCBDDDCCDCADCCABADABCCCCBDBBABBBBDADCAABABCDBADCAACBABDDCBACABDCDDCABCDCCDBBBBABDBACAACBBABBCCDCBDBADBACCBDBAABCADDCADAACACAABBACACCAAABADAAADDADCCCCCCAACCDAAACAAB...

output:

829

result:

ok single line: '829'

Test #37:

score: 0
Accepted
time: 50ms
memory: 15720kb

input:

100000 100 10
BABBABBAAAAAAABBABAAAAABAABBBBBAABBAABBBAAABABABABBABAABAABABAABABABBBBAABBAAABABBBAABBBBABABBABAAAB
BABBABBAAAAABABBABAAAAABAABBBBBAAABAABBBABABBBABABBABAABBABABBABAAABBBBABABAAABABBBBBBBBBABAABBAAAAB
BABBABBAAAAABABBBBABABABABBBBBBAABBAABABAABBAAABABBABAABBBBABBABAABBBBBABBAAAABABBBB...

output:

1078

result:

ok single line: '1078'

Test #38:

score: 0
Accepted
time: 33ms
memory: 16512kb

input:

100000 100 10
CAAACDCDCADACDDCACBCCBABADDDDDABBBCBABACBAAADDCABADAACBCBBCBBCDACCCADDDADDACADDBACBCBDBCADACBDCBBBBA
ACAACDCDCADBCDDCACBCCBDBADDDDAABDBCBABACAAAADDCABADACCBDBACBBBBADCCADCDADDACDDDBACBCBCDCADADBDCBDBBC
CCAACDCDCADBCDDCACDCCBDBADADDAABDACBABACBDAADDCABADADCBCBACABBDBDCCCBCDADDACDDDBACBC...

output:

59854

result:

ok single line: '59854'

Test #39:

score: 0
Accepted
time: 86ms
memory: 55652kb

input:

4038 4096 3072
DABCCADCCABCCBCDACDBDBBDCADBCCDBAAAAACADCBBCAAABCABABDCCDCBADBBBABACCAABBCCCDBDCADADDBBCCDDCACCADADBCACBCDBCABCDBDBABDBCDCDDDABBBBCDACBACCDBBDDAABADDBBDDCDADDCBAAABCDCDCDBCBACCCDACACBACACBCCADDDABAADABBDBBDBBCCBCBBAACCCCDADABBBACADACCCADDDDCDBDDCCCBCACAACACCDBAABACADBADCBACBCBDDDBBABD...

output:

1675

result:

ok single line: '1675'

Test #40:

score: 0
Accepted
time: 60ms
memory: 55612kb

input:

4022 4096 3072
CDCADABBADDACACAACAADDCCCDBCCABCAABDBDBDCBADBACBBDBCCBCDBACDACABCDCBCBADDDBCCCCADDCBBCACCACADBABCDBDDCCBADACCBDCCCBDADBCCDBDBCDCAABCCBBBDABDCBDBADCCBDCDDBABCDDDACBCDCBDBCCDBCDBBDBBBBDAAABDBDDBADCABCDDAAAAACDABDBCADCDBDADCCDCBCCCDBBCBBADACCBDACCBACDCDADDBDCDCDCDADDCAABDBDAAAAAABDDDCCCD...

output:

2084

result:

ok single line: '2084'

Test #41:

score: 0
Accepted
time: 62ms
memory: 57592kb

input:

4033 4096 3072
DBACDBABBCDDACDAABCAACDBBBADCBBDDBBBADCBCDABCBAABDCBDCDCBDDCADDCDCAACCBBACDADBDABBACBCBDCBBACCDBDCBABDAADACBADAACAABDDDDDCDBCDCACDBABBBDABBADDBAADACAAABCBDBCBBBBBDBBBACCCACBBDADDAADBBDDCCBABCBBCAADBDCBDCCCCCCCCBCCDCDDAAAADDACADAAAADDDDACBDCADBCBCAACABABBABCCCAAAABCADBDDADCCACDCBBDCABC...

output:

1585

result:

ok single line: '1585'

Test #42:

score: 0
Accepted
time: 68ms
memory: 57764kb

input:

4031 4096 3072
BDCADCDCBDDBDCBDBADDAABDABCDDAAACABCDDCDCCBABCDDCBBAABCACBDBBADCABBDADBCBDBCDDADAABDBACADCACDBBDBCCBACACCDACCCDDBBDDACBBACCABDDAABCABCBDAADCBADDDBBADDCCDDCDCDBBCCCCAACAACDBACACBADCBCAAAADCBDBADBDACADCCCDACDBADAADCACACDCADDCDCDBDCCCADDCACBCBCACDDBDCADDDDDBCDCADDBABBDABBCBADACCACDCADBCB...

output:

2643

result:

ok single line: '2643'

Test #43:

score: 0
Accepted
time: 64ms
memory: 55672kb

input:

4030 4096 3072
CADBCAADADCABADCDADCDAABBCADADCCCCCABCDCADCDBCCAADADDAAABCADBADABBACCABABDDDADADBCDDADBADCCDCBABDACDCDCACCABBBDDCBCBDAACDCBACCBDDBDAAAAABCADBCCCADCACBACBAADACDCBCABCDBABDBCDDDCACDBADDDCCBDBDBACBDACABBCAABBCBCBDBADCDCDBAAAADCDDDCADABBCCACCCDDBDBBDDCACABABBDCCADCABADCACDBBBBCABABDDADCCD...

output:

1950

result:

ok single line: '1950'

Test #44:

score: 0
Accepted
time: 735ms
memory: 46128kb

input:

3455 1728 864
CBCCCCCCCBBCBBABABBBAABBCCAAAACAABAABBACBAACBCBCCCABACABACABCAACBBBBACCBBBBCABACBBBBCAAAABCBCBBACACACCAABCBBAABABAACCACCABABBACCCBCAAAACCABCCABCCCACCBCABCCBCABACAAACABBABCCAACBCACCCABCABCAAAACBAABABCACCBBABABCACCCBACBABCCBBBACCBCABBBAACCCACBCCCACCABCAABAAAAAACBBBBCCBBABCBCCACBAACACBCBB...

output:

2126

result:

ok single line: '2126'

Test #45:

score: 0
Accepted
time: 1767ms
memory: 58072kb

input:

4095 4100 1024
BBBBAABBBABBABBBABBAABAAAAAABABBBABBBBBBAABAABABBABBAAAABABAABABBABBABBABBAABBBBBBABABABBBABBAAAABBBBBABABBBBBABBBABAABABBBABBBAAAAAAABBBBBBAABAABAABBBBBBABABBBBBBABBBBAAABBAAAAAABBBAABBBABBBAABBBABBBABBAAAAAABABBBABBAAABAAAABABABABBABBBBBABAABABAABBAABAAAABBBBAABBABAAAABBBAABAABABABB...

output:

1043

result:

ok single line: '1043'

Test #46:

score: 0
Accepted
time: 373ms
memory: 32468kb

input:

2047 4100 1536
DBDAAABBBABDACBCACACBBADDCBDBCBBDABBCBDDBCCDDDCBABBDCBDBBABDDBDCADACBCDACCAAABABCAAABABBBDBACABDADCABDDBDDDCCDCAABCDBCADCBDCCCAADCCBBDDBCBBDBABCCCAADCDACACBACABBDCADBBBAAAADADDDBDBAADBBCCBBABAACDADBCCCBADADCBCCCCAAABDAACABABACBCDABBBCDDADCADCCBCACABACCACCCCBDCDDBACBCCCAACAABBDDDACBDBC...

output:

600

result:

ok single line: '600'

Test #47:

score: 0
Accepted
time: 374ms
memory: 32404kb

input:

2047 4100 770
BBAADADBCBBDCBDACBABBCADDDCCBDDBDCBDCACDCDDDBDACBBCCABBCDDDBCDDDDDAACBADCCCDACCCDDDBADCCCCDCAABBDACBAACACCCAABCCCDCDBDCDADADCCDBDCBBCCBAADDCADCBBCBDCBBAACCAAAACCBDCABBAACBACADCAAACABDBCCBDAAADBCBBABBCBBCDCBCABCCCBBCCCCAAACABDBBBACAACBACABAACCDBDDACCAACDAABADAACBBBABCACABAABCAADCDDCBACB...

output:

907

result:

ok single line: '907'