atcoder#AGC054A. [AGC054A] Remove Substrings

[AGC054A] Remove Substrings

题目描述

英小文字からなる長さ N N の文字列 S S が与えられます.

あなたは,S S に対して以下の操作を好きな回数行えます.

  • 先頭の文字と最後の文字が異なる連続した(非空な)部分列を選び,これを削除する.

S S を空文字列にすることが可能か判定し,可能な場合は必要な最小の操作回数を求めてください.

输入格式

入力は以下の形式で標準入力から与えられる.

N N S S

输出格式

S S を空文字列にすることが可能な場合,必要な最小の操作回数を出力せよ. 不可能な場合,1 -1 を出力せよ.

题目大意

给出一个由小写字母组成的长度为 nn 的字符串 ss

可以对 ss 进行以下操作:

  • 删除一个首尾字符不相同的子串。

求最少多少次操作可使 ss 变成空串,如不能变成空串,输出 1-1

4
abba
2
3
aba
-1

提示

制約

  • 2  N  105 2\ \leq\ N\ \leq\ 10^5
  • S S は英小文字からなる長さ N N の文字列

Sample Explanation 1

abba →(abを選んで削除)→ ba →(baを選んで削除)→ 空文字列 と操作すればよいです.