eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Простое префиксное сжатие

Простое префиксное сжатие

Многие базы данных хранят информацию в символьных ячейках (индексах) используя префиксное сжатие. Эта техника сжимает последовательность строк \textbf{A_1}, ..., \textbf{A_N} следующим образом: если имеются строки \textbf{A_i = a_\{i,1\}a_\{i,2\}...a_\{i,p\}} и \textbf{A_\{i+1\} = a_\{i+1,1\}a_\{i+1,2\}...a_\{i+1,q \}} такие, что для некоторого \textbf{j} ≤ \textbf{min(p, q)} \textbf{a_\{i,1\} = a_\{i+1,1\}, a_\{i,2\} = a_\{i+1,2\}, ... a_\{i,j\} = a_\{i+1,j\}}, то вторая строка хранится в виде \textbf{\[j\]a_\{i+1,j+1\}a_\{i+1,j+2\}... a_\{i+1,q\}}, где \textbf{\[j\]} - один символ с кодом \textbf{j}. Если \textbf{j = 0}, то если строки не имеют общего префикса, то перед второй строкой добавляется нулевой байт, таким образом длина строки на самом деле увеличивается. \InputFile Первая строка содержит целое число \textbf{N} (\textbf{1} ≤ \textbf{N} ≤ \textbf{10000}), за которой следуют \textbf{N} строк \textbf{A_1} ... \textbf{A_N} (\textbf{1 }≤ \textbf{length}(\textbf{A_i})\textbf{ }≤ \textbf{255}). \OutputFile Вывести одно целое число - наименьшую общую длину сжатых слов.
Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
3
abc
atest
atext
Выходные данные #1
11