#809. 新年字符串
新年字符串
题目描述
我们称仅由字符 构成的字符串为 新年字符串,当且仅当满足下列两条条件中的至少一条:
- 字符串包含子串 ;
- 或者字符串不包含子串 。
例如:、、、 都是 新年字符串;而 、、、 则不是。
现在给定一个长度为 的字符串 (字符均来自集合 )。你可以对 执行任意次以下操作(次数可以为 ):
- 选择字符串中的某个位置,将该字符替换为 、、 或 中的任意一个。
求使得字符串 变为一个 新年字符串 的最小操作次数。
输入格式
-
第一行包含一个整数 ()— 测试用例数。
-
每个测试用例包含两行:
- 第一行包含整数 ()— 字符串长度;
- 第二行包含长度为 的字符串 ,每个字符均为 、、 或 。
输出格式
对每个测试用例,输出一行,包含一个整数 — 把字符串变为新年字符串所需的最小操作次数。
样例输入
7
4
0000
4
2025
4
2026
8
20252026
8
20252025
9
202520256
9
202520265
样例输出
0
1
0
0
1
1
0
说明
样例解释
- 第 个样例: 不含 ,因此已满足“不包含 ”这一条件,故需要 次修改。
- 第 个样例: 包含 ,且不包含 ,要想成为新年字符串,至少要把一个字符改动使得**不包含 **或使其包含 。例如把第 个字符改为 得到 (不含 ),因此最少需要 次操作。