Submission #1359974


Source Code Expand

#include<iostream>
#include<string>
#include<cmath>
#include<queue>
#include<map>
#include<set>
#include<list>
#include<iomanip>
#include<vector>
#include<functional>
#include<algorithm>
#include<cstdio>
#include<unordered_map>
#define int long long
#define rep(i,a,n) for (int (i)=(a);(i)<(n);(i)++)
using namespace std;
typedef long long ll;
typedef long double ld;
signed  main() {
	string s;
	cin >> s;
	int n = s.size(), ans = 10000000000;
	for (int z = 0; z < 26; z++) {
		char a = (char)z + 'a';
		int sum = 0;
		int d[26];
		fill(d, d + 26, 0);
		string h = s;
		for (int i = 0; i < n; i++)
			d[(int)s[i] - 'a']++;
		for (int i = 0; i < 26; i++) {
			if (d[i] != 0)
				sum++;
		}
		if (sum == 1)
			ans = 0;
		for (int i = n - 1; i >= 0; i--) {
			for (int j = 0; j < i; j++) {
				if (h[j] == a)
					continue;
				if (h[j + 1] == a) {
					d[(int)h[j] - 'a']--;
					if (d[(int)h[j] - 'a'] == 0)
						sum--;
					h[j] = a;
				}
			}
			d[(int)h[i] - 'a']--;
			if (d[(int)h[i] - 'a'] == 0)
				sum--;
			if (sum == 1) {
				ans = min(n - i, ans);
				break;
			}
		}
	}
	cout << ans << endl;
	getchar(); getchar();
}

Submission Info

Submission Time
Task A - Shrinking
User Thistle
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1188 Byte
Status WA
Exec Time 2 ms
Memory 256 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 300
Status
AC × 4
AC × 12
WA × 2
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 WA 2 ms 256 KB
1_07.txt WA 2 ms 256 KB
1_08.txt AC 1 ms 256 KB
1_09.txt AC 2 ms 256 KB