open Scanf
open Printf

let ($) f x = f x
let scanIntlist n = let list = ref [] in
  for i = 1 to n do
    list := (scanf (if i < n then "%d " else "%d") (fun x -> x))::!list
  done; List.rev !list

let string2charlist s = let rec proc i res =
                          try proc (i+1) $ s.[i]::res
                          with Invalid_argument _ -> res
  in List.rev $ proc 0 []

let minInt l = let rec proc l res = match l with
      [] -> res
    | x::xs -> if x < res then proc xs x else proc xs res
  in if l == [] then raise $ Failure "null list" else proc l max_int



let rec listSum = function
    [] -> 0
  | x::xs -> x+listSum xs;;


sscanf (read_line ()) "%d %d" $ fun n x ->
  let l = scanIntlist n in
  let min = minInt l in
  let sum = listSum l in
  print_int $ (x-sum) / min + n;;
