#include #include #include #include #include using namespace std; int check1(char c){ if ('0' <= c && c <= '9') return 1; else return 0; } int check2(char c) { if ('a' <= c && c <= 'z') return 1; else return 0; } int check3(char c) { if ('A' <= c && c <= 'Z') return 1; else return 0; } int check4(char c) { char c1 = '!'; char c2 = '@'; char c3 = '#'; char c4 = '$'; char c5 = '%'; char c6 = '^'; char c7 = '&'; char c8 = '*'; char c9 = '('; char c10 = ')'; char c11 = '-'; char c12 = '+'; if (c == c1 || c == c2 || c == c3 || c == c4 || c == c5 || c == c6 || c == c7 || c == c8 || c == c9 || c == c10 || c == c11 || c == c12) return 1; else return 0; } int minimumNumber(int n, string password) { // Return the minimum number of characters to make the password strong bool ch1 = true, ch2 = true, ch3 = true, ch4 = true; int ret = 0; if (n == 0) return 6; else if (n == 1) return 5; else if (n == 2) return 4; else if (n == 3) return 3; else { for (int i = 0; i < n; i++) { if (ch1 && check1(password[i])) { ch1 = false; ret = ret + 1; } else if(ch2 && check2(password[i])) { ch2 = false; ret = ret + 1; } else if(ch3 && check3(password[i])) { ch3 = false; ret = ret + 1; } else if(ch4 && check4(password[i])) { ch4 = false; ret = ret + 1; } } return max(6-n, 4 - ret); } } int main() { int n; cin >> n; string password; cin >> password; int answer = minimumNumber(n, password); cout << answer << endl; return 0; }