A1826.围巾

入门

官方

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

ACAC 狗准备织一条围巾,并请小 AA 设计一个图案,图案是由小写字母组成字符串,小 AA 写下了一个长度为 nn 的字符串 ss

ACAC 狗想要一条漂亮的围巾,在它看来,漂亮的围巾的图案应该是回文的。于是,它想改变小 AA 设计的图案,但是为了避免冒犯小 AA,它将选择一个小写的英文字母,并在 ss 中删除该字母(可能删除所有,也有可能删除部分)。

它还想尽量减少图案中被删除的字母的数量。请帮助它找出它可以删除的字母的最小数目,使 ss 变为回文串。注意,ACAC 狗只能删除它选择的一个字母的符号。

请你帮助 ACAC 狗解决这个问题。

输入格式

第一行包含一个整数 TT (1T1001 \le T \le 100)——表示测试用例的数目。

每个测试用例的第一行包含一个整数 nn(1n1051 \le n \le 10^5),即 ss 的长度。

每个测试用例的第二行包含字符串 ss

输出格式

对于每个测试用例,如果删除某个字母可以使 ss 回文,输出使 ss 变为回文所删除的字母的最小数目。否则,输出 −1

输入输出样例

  • 输入#1

    5
    8
    abcaacab
    6
    xyzxyz
    4
    abba
    8
    rprarlap
    10
    khyyhhyhky

    输出#1

    2
    -1
    0
    3
    2

说明/提示

在第一个测试用例中,ACAC 狗可以选择一个字母 a 并删除 ss 中第一个 a 和最后一个 a,得到 bcaacb,是回文的。也可以选择一个字母 b 并删除 ss 中所有的字符 b。得到 acaaca,是回文的。

在第二个测试用例中,选择一个字母并删除不能得到回文。

在第三个测试用例中,ss 已经是回文串。

首页