11890. Найкраща конкатенація


Відправити розв'язок

Бали: 100
Time limit: 1.0s
Memory limit: 500M

Author:
Problem type
Allowed languages
C++, Java, Pascal, Python

Вам надано \(N\) рядків \(S_1, S_2, \ldots, S_N\), які складаються з цифр від 1 до 9 і символу X.

Ми виберемо перестановку \(P = (P_1, P_2, \ldots, P_N)\) з (\(1, 2, \ldots, N\)) для створення рядка \(T = S_{P_1} + S_{P_2} + \cdots + S_{P_N}\), де + позначає конкатенацію рядків. Тоді ми обчислимо «оцінку» рядка \(T = T_1T_2\ldots T_{|T|}\)(де \(|T|\) позначає довжину \(T\)). Оцінка розраховується за наступними 9 кроками, починаючи з початкової оцінки 0:

  • Додайте 1 бал до результату стільки разів, скільки пар цілих чисел (\(i, j\)), щоб \(1 \leq i \lt j \leq |T|\), \(T_i = X\) і \(T_j\) = 1.

  • Додайте 2 бали до результату стільки разів, скільки пар цілих чисел (\(i, j\)), щоб \(1 \leq i \lt j \leq |T|\), \(T_i = X\) і \(T_j\) = 2.

  • Додайте 3 бали до результату стільки разів, скільки пар цілих чисел (\(i, j\)), щоб \(1 \leq i \lt j \leq |T|\), \(T_i = X\) і \(T_j\) = 3.

...

  • Додайте 9 балів до результату стільки разів, скільки пар цілих чисел (\(i, j\)), щоб \(1 \leq i \lt j \leq |T|\), \(T_i = X\) і \(T_j\) = 9.

Знайти максимально можливу оцінку \(T\), коли \(P\) можна вибрати довільно.

Обмеження

  • \(2 \leq N \leq 2 \times 10^5\)
  • \(N\) — ціле число.
  • \(S_i\) це рядок довжиною не менше 1, що складається з цифр від 1 до 9 і символу X.
  • Сума довжин \(S_1, S_2, \ldots, S_N\) не більше \(2 \times 10^5\).

Формат вхідних даних

Перший рядок містить ціле число \(N\)

Наступні  \(N\) рядків містять \(S_i\)

Формат вихідних даних

У вихідний потік виведіть відповідь.

Примітка

До прикладу 1: Коли P = (3, 1, 2), ми маємо \(T = S_3 + S_1 + S_2\) = XXX1X359.

Отже, оцінка \(T\) становить \(1 \times 3 + 3 \times 4 + 5 \times 4 + 9 \times 4\) = 71, яка є максимальною.

Приклад вхідних даних

3
1X3
59
XXX

Приклад вихідних даних

71

Приклад вхідних даних

10
X63X395XX
X2XX3X22X
13
3716XXX6
45X
X6XX
9238
281X92
1XX4X4XX6
54X9X711X1

Приклад вихідних даних

3010

Коментарі

Ще немає коментарів.