Биби и его папа

Для решения данной задачи для каждой команды будем сохранять номер строки, в которой она встречалась в последний раз. Это можно сделать, например, при помощи std::map в C++.

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

Прибавим к результату минимальное из этих двух значений, увеличенное на единицу (нажатие клавиши Enter). Если команда еще не встречалась ни разу, то сравнение не требуется — в любом случае, ее придется ввести полностью.

После обработки очередной команды нужно не забыть обновить номер строки ее последнего появления.