Комитет по Национальным Археологическим Исследованиям в Исследовании Организованных Зон (NARXOZ) обнаружил старинный сундук в Алматинской области. Однако на сундуке был замок с паролем, который состоит из $$$n$$$ положительных чисел.
К счастью, учёные также нашли правильную версию этого списка — ту, которая открывает сундук.
Вам даны два списка чисел: пароль, который сейчас установлен на замке, и пароль, который открывает сундук.
Чтобы изменить текущий пароль на правильный, вы можете использовать следующую операцию:
Вы можете повторять эту операцию сколько угодно раз. Ваша цель — сделать текущий список в точности таким же, как правильный, используя минимальное количество операций.
Если сделать два списка одинаковыми невозможно, выведите -1.
NARXOZ проводит конкурс: тот, кто быстрее всех решит эту задачу, получит отличное предложение о работе. Вы хотите победить — так что приступайте к работе!
В первой строке дано одно целое число $$$n$$$ ($$$1 \le n \le 3*10^5$$$) — длина пароля.
Во второй строке содержатся $$$n$$$ положительных целых чисел — текущая версия пароля.
В третьей строке содержатся $$$n$$$ положительных целых чисел — правильная версия пароля.
Все значения чисел положительные и не превышают $$$10^9$$$.
Выведите одно число — минимальное количество операций, необходимое для превращения текущего списка в правильный. Если это невозможно, выведите -1.
34 7 31 7 6
3
43 1 4 22 2 3 3
-1
В первом примере можно выполнить операции в следующем порядке: обменять $$$(1, 2)$$$, обменять $$$(2, 3)$$$ и обменять $$$(1, 2)$$$. Можно показать, что другого способа с меньшим количеством операций не существует.
Во втором примере не существует корректного порядка операций, чтобы получить правильную версию пароля из текущей.