import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; public class Solution { static int minimumNumber(int n, String password) { // Return the minimum number of characters to make the password strong int[] numbers = new int[10]; int[] lower_case = new int[26]; int[] upper_case = new int[26]; String special_characters = "!@#$%^&*()-+"; Map special_char = new HashMap<>(); for(char c:special_characters.toCharArray()){ special_char.put(c, 0); } boolean number_flag = false, lower_case_flag = false, upper_case_flag = false, special_case_flag = false; for(char c:password.toCharArray()){ if( c >= '0' && c <= '9'){ number_flag = true; numbers[c - '0']++; } else if( c >= 'a' && c <= 'z'){ lower_case_flag = true; lower_case[c - 'a']++; } else if( c >= 'A' && c <= 'Z'){ upper_case_flag = true; upper_case[c-'A']++; } else if(special_char.containsKey(c)){ special_case_flag = true; special_char.put(c, special_char.get(c)+1); } } int k = 0; if(n < 6){ if(!number_flag) k++; if(!lower_case_flag) k++; if(!upper_case_flag) k++; if(!special_case_flag) k++; if( n + k >= 6) return k; else return k + 6 - (n+k); } else{ if(!number_flag) k++; if(!lower_case_flag) k++; if(!upper_case_flag) k++; if(!special_case_flag) k++; } return k; } public static void main(String[] args) { Scanner in = new Scanner(System.in); int n = in.nextInt(); String password = in.next(); int answer = minimumNumber(n, password); System.out.println(answer); in.close(); } }