Задача Newpatience
Багато  хто  в  вiльний  час   захоплюється   розкладанням 
пасьянсiв. Пропонуємо вам ще один, правда, карти для нього 
треба виготовити самостiйно.  Отже,  на N картках нанесiть  
натуральнi числа по одному числу на  кожнiй сторонi картки 
такими чином, що кожне  з  чисел  наносилось рiвно 2 рази. 
Картки  розкладiть  на  столi  в  рядок. Все готово. Можна 
починати.  В  процесi  гри  картки можна перевертати iншою 
стороною.  Пасьянс сходиться тодi, коли перевернувши деякi 
картки,   ви  отримаєте  можливiсть  бачити  всi  N  чисел 
одночасно.Чи зiйдеться пасьянс,а якщо так, то яку найменшу 
кiлькiсть карток необхiдно для цього перевернути? 
Технічні
умови:Програма читає  з  клавiатури число  N (N<10000), а далi 2 
групи по N чисел - спочатку числа на однiй з сторiн кожної 
з N карток  (гравець їх бачить  на початку гри),  а  потiм 
числа, нанесенi на цi ж картки, але на протилежну сторону. 
Всi числа вводяться одним  рядком через пропуски.
Ви  виводите  на  екран  одне  число: -1,  якщо пасьянс не 
"зiйшовся", або  мiнiмальну  кiлькiсть  перевернутих iншою 
стороною карток, якщо гра завершилась успiхом. 
Приклад.
Введення>5 3 2 5 3 2 5 4 1 1 4
Виведення>2 
Задача Newpatience
Многие в свободное время увлекаются разложением пасьянсов.  
Предлагаем  вам  еще  один,  правда, карты для него  нужно 
изготовить самостоятельно.  Итак, на N карточках  нанесите  
натуральные  числа  по  одному  числу  на  каждой  стороне 
карточки так, что каждое из чисел наносилось ровно 2 раза. 
Карточки разложите  на  столе  в  ряд.  Все готово.  Можно 
начинать.  В процессе  игры  карточки можно переворачивать 
другой стороной. Пасьянс  сходится тогда, когда перевернув 
некоторые карточки,  вы  получите возможность видеть все N 
чисел одновременно.  Сойдется  ли  пасьянс,  а если да, то 
какое  наименьшее количество карточек необходимо для этого 
перевернуть? 
Технические
условия: Программа читает с клавиатуры число N (N<10000), а далее 2 
группы по N чисел-сначала числа  на одной из сторон каждой 
из  N  карточек (игрок их видит в  начале игры),  а  затем 
числа, нанесеннные на эти же карточки,но на противоположную 
сторону. Все числа вводятся одной строкой через пробелы.
Вы  выводите  на  экран  одно  число:  -1, если пасьянс не 
"сошелся", либо минимальное количество перевернутых другой 
стороной карточек, если игра завершилась успехом. 
Пример.
Ввод>5 3 2 5 3 2 5 4 1 1 4
Вывод>2