/*************************************************** * Problem name : A.cpp * Problem Link : * OJ : * Verdict : Trying * Date : 2017-11-02 * Problem Type : * Author Name : Saikat Sharma * University : CSE,MBSTU ***************************************************/ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define __FastIO ios_base::sync_with_stdio(false); cin.tie(0) #define SET(a) memset(a,-1,sizeof(a)) #define pii pair #define pll pair #define debug printf("#########\n") #define nl printf("\n") #define sl(n) scanf("%lld", &n) #define sf(n) scanf("%lf", &n) #define si(n) scanf("%d", &n) #define ss(n) scanf("%s", n) #define pb push_back #define MAX 100000 using namespace std; typedef long long ll; typedef unsigned long long ull; template std::string NumberToString ( T Number ) { std::ostringstream ss; ss << Number; return ss.str(); } ll gcd(ll a, ll b) { if (a % b == 0) return b; return gcd(b, a % b); } ll lcm(ll a, ll b) { return a * b / gcd(a, b); } /************************************ Code Start Here ******************************************************/ mapmp, mpa, mpA, mpn; void pre() { for (int i = 0; i <= 9; i++) { char ch = i + '0'; mpn[ch] = 1; } for (char i = 'a'; i <= 'z'; i++) { mpa[i] = 1; } for (char i = 'A'; i <= 'Z'; i++) { mpA[i] = 1; } mp['!'] = 1, mp['@'] = 1, mp['#'] = 1, mp['$'] = 1; mp['%'] = 1, mp['^'] = 1, mp['&'] = 1, mp['*'] = 1; mp['('] = 1, mp[')'] = 1, mp['-'] = 1, mp['+'] = 1; } int main () { pre(); int n, A, a, S, N; string str; scanf("%d", &n); getchar(); cin >> str; A = a = S = N = 0; for (int i = 0; i < n; i++) { char ch = str[i]; if (mp[ch] == 1) S = 1; else if (mpa[ch] == 1) a = 1; else if (mpA[ch] == 1) A = 1; else if (mpn[ch] == 1) N = 1; } int sum = S + a + A + N; if(n >= 6 && sum == 4){ printf("0\n"); } else { int x = 4 - sum; n = n + x; if(n>=6) printf("%d\n", x); else{ n = 6 - n; printf("%d\n", n+x); } } return 0; }