import qualified Data.ByteString as BS import qualified Data.ByteString.Char8 as BC import Data.Maybe main :: IO () main = do n <- (\(x:y:_) -> x * y).r <$> BS.getLine x <- foldr (g n) (Just 0).r <$> BS.getLine print $ maybe (-1) (n-) x where r = map (fst.fromJust.BC.readInt).BC.words g n y (Just x) = if x + y > n then Nothing else Just (x + y) g _ _ Nothing = Nothing