Поручения
시간 제한2초메모리 제한1024 MB
각기 다른 고통과 고통의 정도를 가진 n개의 과제를 순서를 정해 수행하며 추가되는 피로의 최솟값을 구한다.
문제
Учитель Сплинтер всегда держит своих учеников в тонусе. Он дал им поручений: им нужно помочь Кейси Джонсу в уличной драке, спасти Землю от нападок Шреддера и сорвать коварные планы Кренга, а в довесок еще сделать кучу дел по дому. Причем черепашкам необходимо выполнить все эти задания.
Очевидно, каждое поручение --- не из приятных и доставляет черепашкам какое-то количество боли и страданий. Когда черепашки выполняют очередное задание, боль, которую оно приносит, может добавиться к усталости черепашек. Однако, это происходит только в том случае, если любое из заданий, выполненных ими раньше, приносило им меньше боли, чем последнее выполненное. Страдание добавляется к усталости по таким же правилам.
Теперь черепахи хотят выполнять задания в таком порядке, чтобы после выполнения всех заданий усталость была минимальна.
입력
В первой строке входного файла задано одно целое число --- количество заданий, которые получили черепашки. (). Далее следуют строк, где для каждого -го задания задано два целых числа --- количество боли и страдания (). Гарантируется, что все различны и все различны.
출력
В первую строку выходного файла выведите минимальную усталость черепашек после выполнения всех заданий. Во второй строчке выходного файла выведите перестановку чисел от до --- порядок, в котором следует выполнять задания. Если существует несколько оптимальных ответов, выведите любой.
힌트
Решения, работающие в случае, когда , будут оцениваться в баллов.