#!/bin/ruby def minimumNumber(n, password) numbers = "0123456789" lower_case = "abcdefghijklmnopqrstuvwxyz" upper_case = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" special_characters = "!@#$%^&*()-+" has_num = false has_lower = false has_upper = false has_spec = false for i in (0..n - 1) if (numbers.index(password[i])) has_num = true end if (lower_case.index(password[i])) has_lower = true end if (upper_case.index(password[i])) has_upper = true end if (special_characters.index(password[i])) has_spec = true end end needed = 0 needed += 1 if !has_num needed += 1 if !has_lower needed += 1 if !has_upper needed += 1 if !has_spec if n + needed >= 6 return needed else return 6 - n end end n = gets.strip.to_i password = gets.strip answer = minimumNumber(n, password) puts answer