Задача Divide. До дідуся приїхали онуки: Катерина і Дмитро. Дідусь підготував їм подарунок - коробку з відеофільмами, але сказав, що в коробці парна кількість дисків з фільмами, які він поділити не зміг, але хотів би, аби половина дісталась Катрусі й половина Дмитру. Діти придумали досить цікавий спосіб поділу: спочатку вони читали опис кожного фільму, а потім ставили якусь оцінку цьому фільму (кожен свою, оцінки того ж фільму можуть відрізнятись). Потім вони склали всі фільми в коробку. Дмитро витягував кожного разу два диски, і, як справжній джентльмен, давав Катерині вибрати один собі, а інший забирав сам. Зрозуміло, що Катерина обирала той фільм, в якого її оцінка більша. Але Дмитро бажав, щоб сума його оцінок отриманих ним фільмів була якомога більшою. Оскільки він пам'ятав всі свої оцінки й всі оцінки Катерини, Дмитро, підглядаючи у коробку, обирав по два диски кожного разу таким чином,аби в кінці сума його оцінок отриманих ним фільмів була найбільшою.
Технічні умови. Програма Divide читає з клавіатури (стандартного введення) натуральне число N (2≤N≤5000, N - парне). Далі програма читає з наступного рядка оцінки Катерини - N натуральних чисел (до того ж, всі оцінки Катерини різні). З третього рядка програма читає ще N чисел - оцінки Дмитра. Гарантується, що оцінки лежать в межах від 1 до 400000 включно. Програма виводить N/2 рядків по два числа через пропуск, в кожному - пари фільмів, в тому порядку, в якому їх треба витягувати Дмитру. Фільми нумеруються з одиниці. Числа в кожному рядку можна виводити в довільному порядку. Якщо існує декілька рішень, виведіть будь-яке.
Приклади
Введення |
Виведення |
6 6 10 11 18 5 14 1 7 6 12 15 16 |
5 1 2 3 6 4 |
6 6 44 2 43 7 48 6 44 2 43 7 48 |
3 1 5 4 2 6 |
© LIKT 1998-2018