import java.io.*; import java.util.*; import java.text.*; import java.math.*; import java.util.regex.*; public class Solution { static String numbers = "0123456789"; static String lower_case = "abcdefghijklmnopqrstuvwxyz"; static String upper_case = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; static String special_characters = "!@#$%^&*()-+"; static int minimumNumber(int n, String password) { boolean length = false; boolean digit = false; boolean lower = false; boolean upper = false; boolean special = false; //length = password.length()>=6; digit = doesContain(password,numbers); lower = doesContain(password,lower_case); upper = doesContain(password,upper_case); special = doesContain(password,special_characters); int min = 0; min += digit?0:1; min += lower?0:1; min += upper?0:1; min += special?0:1; int dif = 6-password.length(); if(dif>min) min = dif; return min; } static boolean doesContain(String password, String set) { for(int i = 0; i < password.length(); i++) { for(int j = 0; j < set.length(); j++) { if(password.charAt(i)==set.charAt(j)) return true; } } return false; } 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(); } }