Tile Exchanging Фермер Джон хочет покрыть пол в своем амбаре коллекцией квадратных плиток, которые он купил в магазине. К несчастью, Он не измерял точно размер своего амбара перед покупкой, поэтому сейчас он должен обменять часть плиток на другие, тоже квадратные, но других размеров. N квадратных плиток которые ФД купил изначально имеют длины сторон A_1...A_N. Он хочет обменять часть из этих плиток так, чтобы общая сумма площадей всех плиток была ровно M. При этом необходимо соблюсти правила обмена, установленные магазином: - плитка со стороной с длиной A_i может быть обменяна на другую плитку со стороной с длиной B_i за цену (A_i-B_i)* (A_i-B_i). Однако менять можно только ранее купленные плитки. Нельзя Менять плитку, полученную в результате обмена некоторой из ранее купленных плиток. Например, нельзя обменять плитку со стороной 3 на плитку со стороной 2 и потом плитку со стороной 2 поменять на плитку со стороной 1. Определите минимальное количество денег, которое требуется ФД, чтобы сделать сумму площадей плиток равной M. Выведите –1, если невозможно получить площадь M. PROBLEM NAME: tilechng INPUT FORMAT: * Строка 1: Два разделенных пробелом целых числа, N (1<=N<=10) и M (1<=M<=10,000). * Строки 2..1+N: Каждая строка содержит одно целое число (от A_1 до A_N, описывающих длины сторон входных квадратных плиток (1<=A_i<=100). SAMPLE INPUT (файл tilechng.in): 3 6 3 3 1 INPUT DETAILS: Всего есть 3 плитки. Две – квадраты со стороной 3, и одна - квадратная со стороной 1. С помощью обменов мы должны получить общую площадь 6. OUTPUT FORMAT: * Строка 1: Минимальная стоимость обменов чтобы получить площадь M, или –1, если получить площадь M невозможно. SAMPLE OUTPUT (файл tilechng.out): 5 OUTPUT DETAILS: Обменяем первую плитку со стороной 3 на плитку со стороной 2 square, а вторую плитку со стороной 3 на плитку со стороной 1. Это дает суммарную площадь 4+1+1=6 за цену 4+1=5.