Задача №112031. Три строки

Даны три строки \(A\), \(B\), \(C\). Требуется выбрать строки \(A'\), \(B'\) и \(C'\) (возможно пустые, возможно совпадающие), так чтобы строка \(A\) удовлетворяла шаблону \(*A'*B'*\), строка \(B\) удовлетворяла шаблону \(*C'*A'*\), строка \(C\) удовлетворяла шаблону \(*B'*C'*\) и величина \(|A'| + |B'| + |C'|\) была максимальна.

Первая строка входного файла содержит единственное целое число \(N\) (\(1 \le N \le 2\,000\)) - длину каждой из входных строк. В следующих трех строках содержатся строки \(A\), \(B\) и \(C\), каждая из которых состоит из \(N\) строчных латинских букв.

Выведите единственное целое число - \(|A'| + |B'| + |C'|\). Если не существует строк \(A'\), \(B'\) и \(C'\), из которых можно получить данные три строки \(A\), \(B\) и \(C\), то выведите ноль.

Тесты к этой задаче состоят из четырех групп.
0. Тесты 1-3. Тесты из условия, оцениваются в ноль баллов.
1. Тесты 4-20. В тестах этой группы \(1 \le N \le 50\). Эта группа оценивается в 30 баллов.
2. Тесты 21-40. В тестах этой группы \(1 \le N \le 300\). Эта группа оценивается в 30 баллов.
3. В тестах этой группы дополнительные ограничения отсутствуют. Эта группа оценивается в 40 баллов.
Примеры
Входные данные
2
ac
ba
cb
Выходные данные
3
Входные данные
4
agtb
icea
tbhc
Выходные данные
4
Входные данные
3
abc
cde
dea
Выходные данные
2
Сдать: для сдачи задач необходимо войти в систему