Олимпиады по программированию

olympiads.ru

Олимпиады прошлых лет
2020/21
2019/20
2018/19
2017/18
2016/17
2015/16
2014/15
2013/14
2012/13
2011/12
2010/11
2009/10
2008/09
2007/08
2006/07

I Всероссийская заочная олимпиада школьников по информатике (2006/07)
Документы
Информация об олимпиаде
Обращение к организаторам региональных олимпиад
Регионы, участвующие в олимпиаде
Задачи и результаты
Задачи
Тесты и решения
Персональная страничка участника
Предварительные результаты
Результаты проверки решений на похожесть
Окончательные результаты
Дипломы
Статистика
Дополнительная информация
FAQ по работе с тестирующей системой
Несколько советов участникам олимпиад
Связаться с оргкомитетом

I Всероссийская заочная олимпиада школьников по информатике, 2006/07 учебный год

Задача D. Такси

Имя входного файла: d.in
Имя выходного файла: d.out
Максимальное время работы на одном тесте: 1 секунда
Максимальный объем используемой памяти: 64 мегабайта

Наши люди до метро на такси не ездят!

После затянувшегося совещания директор фирмы решил заказать такси, чтобы развезти сотрудников по домам. Он заказал N машин - ровно столько, сколь у него сотрудников. Однако когда они подъехали, оказалось, что у каждого водителя такси свой тариф за 1 километр.

Директор знает, какому сотруднику сколько километров от работы до дома (к сожалению, все сотрудники живут в разных направлениях, поэтому нельзя отправить двух сотрудников на одной машине). Теперь директор хочет определить, какой из сотрудников на каком такси должен поехать домой, чтобы суммарные затраты на такси (а их несет фирма) были минимальны.

Формат входных данных

Сначала во входном файле записано натуральное число N (1≤N≤1000) - количество сотрудников компании (совпадающее с количеством вызванных машин такси). Далее записано N чисел, задающих расстояния в километрах от работы до домов сотрудников компании (первое число - для первого сотрудника, второе - для второго и т.д.). Все расстояния - положительные целые числа, не превышающие 1000. Далее записано еще N чисел - тарифы за проезд одного километра в такси (первое число - в первой машине такси, второе - во второй и т.д.). Тарифы выражаются положительными целыми числами, не превышающими 10000.

Формат выходных данных

В выходной файл выведите N чисел. Первое число - номер такси, в которое должен сесть первый сотрудник, второе число - номер такси, в которое должен сесть второй и т.д., чтобы суммарные затраты на такси были минимальны. Если вариантов рассадки сотрудников, при которых затраты минимальны, несколько, выведите любой из них.

Примеры

d.in d.out
3
10 20 30
50 20 30
1 3 2
5
10 20 1 30 30 
3 3 3 2 3
1 2 3 5 4