E. Перенумерация тестов
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Совсем недавно завершилась Всеберляндская олимпиада по программированию! Теперь Владимир хочет добавить прошедшее соревнование в качестве тренировки на популярный сайт Codehorses.

К сожалению, в архиве олимпиады не царит идеальный порядок. Например, файлы с тестами названы не в соответствии с некоторой логикой, а произвольным образом.

Владимир хочет переименовать файлы с тестами так, чтобы их имена составляли различные целые числа от 1 без промежутков, то есть имели имена «1», «2», ..., «n», где n — общее количество файлов с тестами.

Некоторые из файлов содержат тесты из условия (примеры), а остальные — это просто файлы с обыкновенными тестами. Возможна ситуация, когда примеров нет, а также ситуация, когда все тесты являются примерами. Владимир хочет переименовать файлы так, чтобы примеры из условия составляли первые несколько тестов, а все следующие по порядку файлы содержали обыкновенные тесты.

Единственная операция, которую Владимир осуществляет — это переименование файлов с помощью операции командной строки «move». В результате своей работы Владимир хочет написать скрипт, каждая строка которого имеет вид «move file_1 file_2», которая обозначает, что файл «file_1» следует переименовать в файл «file_2». Если файл «file_2» существовал на момент выполнения строки скрипта, то этот файл будет затёрт. После строки «move file_1 file_2» файл «file_1» более не существует, но обязательно существует файл «file_2», содержащий содержимое файла «file_1» до этой команды «move».

Помогите Владимиру написать скрипт, который содержит минимальное количество строк, такой что после его выполнения:

  • все примеры составляют несколько первых тестов и файлы имеют названия «1», «2», ..., «e», где e — количество файлов с примерами;
  • остальные файлы содержат оставшиеся обыкновенные тесты и имеют названия «e + 1», «e + 2», ..., «n», где n — общее количество всех тестов.
Входные данные

В первой строке записано целое число n (1 ≤ n ≤ 105) — количество файлов с тестами.

Далее следует n строк, каждая описывает один файл с тестом. Строка имеет вид «name_i type_i», где «name_i» — имя файла, а «type_i» равно «1», если i-й файл содержит пример из условия и «0» — если обычный тест. Имя каждого файла — строка из цифр и строчных букв латинского алфавита, длина имени файла содержит от 1 до 6 символов. Гарантируется, что все имена файлов различны.

Выходные данные

В первую строку выведите минимальное количество строк в скрипте Владимира. Далее выведите сам скрипт, каждая строка должна иметь вид «move file_1 file_2», где «file_1» — название существующего в момент исполнения строки файла, а «file_2» — строка из цифр и строчных букв латинского алфавита, длина имени файла должна быть от 1 до 6 символов.

Примеры
Входные данные
5
01 0
2 1
2extra 0
3 1
99 0
Выходные данные
4
move 3 1
move 01 5
move 2extra 4
move 99 3
Входные данные
2
1 0
2 1
Выходные данные
3
move 1 3
move 2 1
move 3 2
Входные данные
5
1 0
11 1
111 0
1111 1
11111 0
Выходные данные
5
move 1 5
move 11 1
move 1111 2
move 111 4
move 11111 3