#P10920. 宇宙射线

宇宙射线

Description

有一个长度为 nn 的二进制串 ss,你需要找到一个最长的长度为偶数的子串,使得它的前半部分和后半部分完全相同。

但是因为宇宙射线攻击了这个串,有一些位置的值变得未知了。

你可以把未知的值视为 0011 的任意一个数,求出在这种情况下这个最长子串的长度。

本题有多组测试。

Input Format

第一行一个正整数 tt,表示测试组数。

接下来 2t2t 行,每两行表示一组测试数据,每组测试数据第一行一个正整数 nn,表示字符串的长度,接下来一行一个长度为 nn 的字符串 ss

Output Format

tt 行,每行一个非负整数,表示第 ii 组测试的答案,由于这个串长一定是偶数,所以你只用输出它的长度除以 22 的结果。

2
10
0110011010
6
01?0?0
4
3

Hint

本题采用捆绑测试。

Subtask\text{Subtask} 分数 n,tn,t 特殊性质
11 1010 n10,t=500n\le 10,t=500 无特殊限制
22 n1000,t=1n\le1000,t=1
33 n1000,t=1000n\le 1000,t=1000 AA
44 无特殊限制
55 n104,t=10n\le 10^4,t=10
66 n104,t=50n\le 10^4,t=50
77 2020 n5×104,t=2n\le 5\times 10^4,t=2
88 1515 n105,t=1n\le 10^5,t=1
99 55 n105,t=5n\le 10^5,t=5

AA:保证 ss 中不存在字符 ?

保证字符串只由 0,1,? 三种字符组成,1n1051\le n\le 10^5