| ||||
Фирменный товар
На рынке n торговцев. Каждый имеет для обмена некоторый фирменный товар (ни у кого другого такого товара нет). Кроме того, каждый хочет в результате обменов получить некоторый фирменный товар, имеющийся на рынке, причем оказалось так, что для любого товара его хочет получить ровно один торговец. Входные данныеВ первой строке теста находится натуральное число n, не превосходящее 5000. Затем во второй строке перечислено ровно n номеров товаров, необходимые торговцам. Если на месте i находится число j, то это означает, что товар, нужный торговцу номер i, изначально находится у торговца номер j. Номера товаров отделяются друг от друга символом "пробел". Выходные данныеДля каждого из тестов требуется указать минимальное количество дней m, требуемых для осуществления обменов. Затем в последующих m строках следует указать, как именно следует осуществлять обмены. Одна строка соответствует одному дню. В начале строки идет число, указывающее количество обменов в этот день. Далее перечисляются все пары торговцев, обменивающихся в этот день. Пары отделяются друг от друга символом "пробел", номера торговцев в паре отделяются друг от друга символом "-". Если существует несколько способов осуществить обмены за минимальное время, то достаточно вывести описание любого из них. ПримерВходные данные: 7 2 1 3 5 6 7 4 Выходные данные: 2 3 1-2 4-5 7-6 1 5-7 Автор задачи: Филимоненков Д.О. |
||||
|