/* */ //#pragma GCC optimize("O3") #define _CRT_SECURE_NO_WARNINGS #include <fstream> #include <iostream> #include <string> #include <complex> #include <math.h> #include <set> #include <vector> #include <map> #include <queue> #include <stdio.h> #include <stack> #include <algorithm> #include <list> #include <ctime> #include <memory.h> #include <assert.h> #define y0 sdkfaslhagaklsldk #define y1 aasdfasdfasdf #define yn askfhwqriuperikldjk #define j1 assdgsdgasghsf #define tm sdfjahlfasfh #define lr asgasgash #define norm asdfasdgasdgsd #define have adsgagshdshfhds #define ends asdgahhfdsfshdshfd #define eps 1e-8 #define M_PI 3.141592653589793 #define bsize 512 #define ldouble long double using namespace std; #define bs 1000000007 const int N = 300031; int n; string st; string numbers = "0123456789"; string lower_case = "abcdefghijklmnopqrstuvwxyz"; string upper_case = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; string special_characters = "!@#$%^&*()-+"; string digits="0123456789"; bool cont(string a,char b){ for (int i=0;i<a.size();i++){ if (a[i]==b) return true; } return false; } bool dont_have(string st,string z){ for (int i=0;i<z.size();i++){ if (cont(st,z[i])) return false; } return true; } int main(){ // freopen("apache.in","r",stdin); // freopen("apache.out","w",stdout); //freopen("input.txt", "r", stdin); //freopen("output.txt", "w", stdout); ios_base::sync_with_stdio(0); //cin.tie(0); cin>>n; cin>>st; int missing_groups=0; if (dont_have(st,lower_case)) ++missing_groups; if (dont_have(st,upper_case)) ++missing_groups; if (dont_have(st,digits)) ++missing_groups; if (dont_have(st,special_characters)) ++missing_groups; missing_groups=max(missing_groups,6-(int)st.size()); cout<<missing_groups<<endl; // cin.get(); cin.get(); return 0; }