Георгий решил подготовить раунд для Codesecrof, поэтому он подготовил m задач. Пронумеруем подготовленные задачи целыми числами от 1 до m. Сложность задачи с номером i Георгий оценивает целым числом bi.
Чтобы раунд получился хорошим, он должен состоять как минимум из n задач. Кроме этого он должен иметь хотя бы одну задачу со сложностью ровно a1, хотя бы одну со сложностью ровно a2, ..., и хотя бы одну задачу со сложностью ровно an. Конечно, в раунде дополнительно могут быть задачи и с другими сложностями.
Георгий обладает плохой фантазией, поэтому ему проще упростить некоторую уже подготовленную задачу, чем придумать новую и подготовить ее. В упрощении задач Георгий виртуоз. Он может упростить любую уже подготовленную задачу со сложностью c до любой целой положительной сложности d (c ≥ d), изменив ограничения на входные данные.
Однако не все так просто. Георгий понял, что даже в том случае, если он упростит некоторые задачи, ему может не хватить задач для хорошего раунда. Поэтому он решил узнать у вас, какое минимальное количество задач ему необходимо придумать дополнительно к уже подготовленным m задачам, чтобы из всех задач можно было собрать хороший раунд. Учтите, что Георгий может придумывать задачи любой сложности.
Примечание
В первом примере набор подготовленных задач удовлетворяет требованиям хорошего раунда.
Во втором примере достаточно придумать и подготовить две задачи со сложностями 2 и 3, чтобы получить хороший раунд.
В третьем примере очень просто получить хороший раунд, если дополнительно придумать и подготовить три задачи со сложностями 2, 3, 4.