Ізоморфізм дерев дерев
Дано два дерева, кожне з яких складається з N вузлів. Дерева називаються ізоморфними, якщо вони мають однакову структуру.
Точніше, дерева A і B є ізоморфними, якщо існує така перестановка p = (p_1, ..., p_N), що вершина i є коренем у дереві A тоді і тільки тоді, коли вершина p_i є коренем у дереві B, а вершина i є батьківською для j у дереві A тоді і тільки тоді, коли p_i є батьківською для p_j у дереві B.
Вхідні дані
У першому рядку вхідного файлу задано натуральне число N (1 ≤ N ≤ 10^5). У другому і третьому рядках описані дерева. Кожен з цих рядків містить N чисел a_1, a_2, ..., a_N, де a_i вказує на номер батьківської вершини для вершини i або дорівнює 0, якщо вершина i є коренем.
Вихідні дані
У вихідний файл потрібно вивести N чисел, що визначають перестановку-ізоморфізм p, яка перетворює перше дерево у друге. Якщо таких перестановок декілька, можна вивести будь-яку з них. Якщо дерева не є ізоморфними, виведіть одне число -1.