Submission #1360066


Source Code Expand

#include <iostream>
#include <string>
#include <algorithm>
#define int long long
using namespace std;

bool check(string s) {
    char x = s[0];
    for (int i = 1; i < s.size(); i++) {
        if (x != s[i]) return false;
    }
    return true;
}

signed main() {
    string s;
    cin >> s;

    int count[26];
    for (int i = 0; i < 26; i++) {
        count[i] = 0;
    }

    for (int i = 0; i < s.size(); i++) {
        count[s[i] - 'a']++;
    }

    int maxcount = count[0];
    for (int i = 1; i < 26; i++) {
        maxcount = max(maxcount, count[i]);
    }

    int ans = 1000;
    for (int i = 0; i < 26; i++) {
//        if (count[i] < maxcount) continue;
        string temp = s;
        int res = 0;
        while (!check(temp)) {
            for (int j = 0; j < temp.size() - 1; j++) {
                if (temp[j + 1] == i + 'a') temp[j] = temp[j + 1];
            }
            temp.erase(temp.begin() + temp.size() - 1);
            res++;
//            cout << temp << endl;
        }
        ans = min(ans, res);
    }

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

Submission Info

Submission Time
Task A - Shrinking
User madman6
Language C++14 (GCC 5.4.1)
Score 300
Code Size 1134 Byte
Status AC
Exec Time 1 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 300 / 300
Status
AC × 4
AC × 14
Set Name Test Cases
Sample 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt
All 0_00.txt, 0_01.txt, 0_02.txt, 0_03.txt, 1_00.txt, 1_01.txt, 1_02.txt, 1_03.txt, 1_04.txt, 1_05.txt, 1_06.txt, 1_07.txt, 1_08.txt, 1_09.txt
Case Name Status Exec Time Memory
0_00.txt AC 1 ms 256 KB
0_01.txt AC 1 ms 256 KB
0_02.txt AC 1 ms 256 KB
0_03.txt AC 1 ms 256 KB
1_00.txt AC 1 ms 256 KB
1_01.txt AC 1 ms 256 KB
1_02.txt AC 1 ms 256 KB
1_03.txt AC 1 ms 256 KB
1_04.txt AC 1 ms 256 KB
1_05.txt AC 1 ms 256 KB
1_06.txt AC 1 ms 256 KB
1_07.txt AC 1 ms 256 KB
1_08.txt AC 1 ms 256 KB
1_09.txt AC 1 ms 256 KB