Гра#8552

Гра

1 секунда
128 мегабайтів
Легка

Боян грає в комп'ютерну гру. Спочатку є куль, розташованих у ряд. На кожній кулі написано число, і будь-які дві сусідні кулі мають різні числа. Гра складається з таких кроків:

  1. Гравець видаляє одну кулю з ряду.

  2. Поки сусідні кулі мають однакові числа, вони автоматично видаляються з ряду.

  3. Якщо в ряду ще залишилися кулі, повертаємося до кроку ; інакше гра завершується.

Очки нараховуються за кількість куль, які автоматично видаляються. Мета гри — максимізувати кількість очок.

Приклад:

  1. Боян видаляє кулю номер . Залишаються кулі {, , , , }.

  2. Автоматично видаляються послідовні кулі з однаковими номерами: {, , , , } -> {, , } -> {}. Залишається куля {}.

  3. Оскільки в ряду ще є кулі, переходимо до кроку .

Наступна ітерація:

  1. Боян видаляє кулю номер . Залишаються кулі {}.

  2. Послідовних куль з однаковими числами більше немає.

  3. Оскільки куль у ряду не залишилося, гра завершується.

Кількість куль, видалених автоматично, дорівнює . Це найбільший можливий рахунок у цій грі. Боян багато грає, але все ще не впевнений, чи грає він оптимально. Напишіть програму, яка допоможе йому знайти найкращий можливий результат.

Вхідні дані

Перша строка містить натуральне число (1 \le n \le 500). Друга строка містить натуральних чисел — числа, записані на кулях (число на кулі \le 10^6).

Вихідні дані

Виведіть найбільшу кількість очок, яку може отримати Боян.

Приклади

Приклад 1

Loading
Loading

Приклад 2

Loading
Loading