using System; using System.Collections.Generic; using System.IO; using System.Linq; class Solution { static bool isStringContainString(string toCompare, string comparer) { var parts = comparer.ToCharArray().ToList(); return parts.Any(_=> toCompare.Contains(_)); } static int minimumNumber(int n, string password) { string numbers = "0123456789"; string lower_case = "abcdefghijklmnopqrstuvwxyz"; string upper_case = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; string special_characters = "!@#$%^&*()-+"; int ans = 0; if(!isStringContainString(password, numbers)) ans++; if(!isStringContainString(password, lower_case)) ans++; if(!isStringContainString(password, upper_case)) ans++; if(!isStringContainString(password, special_characters)) ans++; if(ans+password.Length < 6) { int diff = (6-password.Length); if(diff>ans) return diff; else return ans; } return ans; } static void Main(String[] args) { int n = Convert.ToInt32(Console.ReadLine()); string password = Console.ReadLine(); int answer = minimumNumber(n, password); Console.WriteLine(answer); } }