Мінімаксне парування#640

Мінімаксне парування

2 секунди
64 мегабайти
Легка

Дано повний двочастковий граф з двома частинами, кожна з яких містить вершин. Кожна вершина має цілу вагу. Вага ребра визначається як добуток ваг двох вершин, які воно з'єднує.

Парування у графі — це набір ребер, жодні з яких не мають спільної вершини. Парування називається досконалим, якщо воно покриває всі вершини графа, тобто кожна вершина інцидентна деякому ребру цього парування.

Потрібно знайти досконале мінімаксне парування, тобто таке досконале парування, при якому максимальна вага серед вибраних ребер є мінімально можливою.

Вхідні дані

Перший рядок містить одне ціле число (1 \leq N \leq 10^5). Другий рядок містить цілих чисел з модулем не більше 10^9 — ваги вершин першої частини. Третій рядок містить цілих чисел у такому ж форматі — ваги вершин другої частини. Вершини кожної частини пронумеровані від до .

Вихідні дані

Виведіть одне ціле число — вагу досконалого мінімаксного парування, тобто максимальну вагу серед його ребер. У другому рядку виведіть опис такого парування: цілих чисел, де -те число — це номер вершини з другої частини, яка з'єднана ребром з -ю вершиною першої частини.

Приклади

Приклад 1

Loading
Loading