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) { String pattern = "(?=.*[0-9])(?=.*[a-z])(?=.*[A-Z])(?=.*[@#$%^&+=])(?=\\S+$).{8,}"; int ans=0; if(password.matches(pattern)) { return ans; } else { int count=0,count1=0,count2=0,count3=0; for(int i=0;i=97 && (int)password.charAt(i)<=122) { count++; } if((int)password.charAt(i)>=65 && (int)password.charAt(i)<=90) { count1++; } if((int)password.charAt(i)>=48 && (int)password.charAt(i)<=57) { count2++; } if(q(password.charAt(i))) { count3++; } } if(count==0) { ans++; } if(count1==0) { ans++; } if(count2==0) { ans++; } if(count3==0) { ans++; } if(ans+password.length()<6) { ans=6-password.length(); } return ans; } } static boolean q(char a) { boolean d=false; String c="!@#$%^&*()-+"; for(int h=0;h