eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Роботи

Роботи

На деякому заводі вирішили модернізувати виробництво і закупили для цього роботів. Так як для обробки деталі потрібно виконання двох операцій, роботи також були двох типів: першу операцію виконували роботи типу \textbf{А}, а другу -- роботи типу \textbf{В}. Щоб зекономити на покупці роботів, було вирішено купити не нових роботів останньої моделі, а вже таких, що були у використанні. В результаті, час, який різні роботи витрачали на виконання однієї і тієї ж операції, істотно відрізнявся, що призвело до труднощів у плануванні робіт. Складіть програму, яка за заданим набором роботів обох типів визначає, за який мінімальний час вони зможуть опрацювати певну кількість деталей. \InputFile У першому рядку задано натуральне число \textbf{N}, \textbf{1} ≤ \textbf{N} ≤ \textbf{100000} -- кількість деталей, які потрібно опрацювати. У другому рядку міститься натуральне число \textbf{Na}, \textbf{1} ≤ \textbf{Na} ≤ \textbf{1000} -- кількість роботів, що виконують першу операцію. У третьому рядку через пропуск задано \textbf{Na} натуральних чисел \textbf{A_i}, \textbf{1} ≤ \textbf{A_i} ≤ \textbf{100} -- час, який витрачає \textbf{i}-ий робот типу \textbf{А} на виконання операції. У четвертому рядку задано натуральне число \textbf{Nb}, \textbf{1} ≤ \textbf{Nb} ≤ \textbf{1000} -- кількість роботів, які виконують другу операцію. У п`ятому рядку задано через пропуск \textbf{Nb} натуральних чисел \textbf{B_i}, \textbf{1} ≤ \textbf{B_i} ≤ \textbf{100} -- час, який затрачає \textbf{i}-ий робот типу \textbf{В} на виконання операції. \OutputFile У єдиному рядку вивести одне ціле число -- мінімальний час, за який всі \textbf{N} деталей будуть оброблені спочатку роботом типу \textbf{A}, а потім роботом типу \textbf{В}. Часом передачі деталі від робота типа \textbf{А} роботу типу \textbf{В} знехтувати.
Ліміт часу 1 секунда
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
6
3
1 3 2
2
2 3
Вихідні дані #1
9