Statement is not available in English language
2. Очередная задача про хорошие строки
ограничение по времени на тест
1 секунда
ограничение по памяти на тест
256 мегабайт
ввод
стандартный ввод
вывод
стандартный вывод

Одна известная команда впервые за несколько месяцев решила написать тренировку. Но друзья решили, что им чужды старые технологии, поэтому они попросили нейросеть сгенерировать задачу, а потом решить ее (ведь зачем решать задачи самим). Сама задача звучала довольно просто.

Вам даны $$$n$$$ строк $$$s_1, s_2, \ldots, s_n$$$, состоящих из цифр от $$$0$$$ до $$$9$$$. Необходимо посчитать количество пар индексов $$$(i, j)$$$ $$$1 \le i \lt j \le n$$$, таких что строка $$$s_i + s_j$$$ является хорошей, где $$$s_i + s_j$$$ — это конкатенация строк $$$s_i$$$ и $$$s_j$$$. Строка $$$t$$$ длины $$$m$$$ называется хорошей, если для любого индекса $$$1 \lt i \le m$$$ выполнено неравенство $$$t_{i - 1} \le t_i$$$.

Сгенерировать задачу нейросеть смогла, а вот решить ее — нет. Но друзья уже очень устали, поэтому решать эту задачу придется вам.

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

Первая строка содержит одно целое число $$$n$$$ ($$$1 \le n \le 100\,000$$$) — количество строк.

Каждая из следующих $$$n$$$ строк содержит строку $$$s_i$$$. Гарантируется, что строки $$$s_i$$$ состоят только из цифр от $$$0$$$ до $$$9$$$.

Гарантируется, что сумма длин строк не превосходит $$$100\,000$$$.

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

Выведите количество пар индексов $$$(i, j)$$$ $$$1 \le i \lt j \le n$$$, таких что строка $$$s_i + s_j$$$ является хорошей.

Обратите внимание, что ответ в этой задаче может превышать возможное значение 32-битной целочисленной переменной, поэтому необходимо использовать 64-битные целочисленные типы данных (тип int64 в языке Pascal, тип long long в C++, тип long в Java и C#).

Система оценки

Баллы за каждую подзадачу начисляются только в случае, если все тесты для этой подзадачи и необходимых подзадач успешно пройдены.

Обозначим за $$$m$$$ сумму длин всех строк $$$s_i$$$. Иными словами, $$$m = \sum \limits_{i=1}^{n} \lvert s_i \rvert$$$.

ПодзадачаБаллы Дополнительные ограничения Необходимые подзадачи Информация о проверке
00Тесты из условияполная
115 $$$n, m \le 100$$$, $$$\lvert s_i \rvert \le 3$$$ для всех $$$1 \le i \le n$$$, все строки не содержат нулей первая ошибка
220$$$n, m \le 100$$$1первая ошибка
330$$$n \le 2\,000$$$1, 2первая ошибка
435нет1, 2, 3первая ошибка
Пример
Входные данные
4
456
01
1239
701
Выходные данные
1
Примечание

В примере подходит только одна пара индексов: $$$(2, 3)$$$. Полученная строка 011239 является хорошей.