Задача №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