#CF2049B. pspspsps

pspspsps

B. pspspsps

单次测试时间限制11内存限制256256 兆字节

猫咪会被 pspspsps 吸引,但身为威严巨龙的埃维里尔,只对有着特殊严格要求的 pspspsps 感兴趣……

给定长度为 nn 的字符串 s=s1s2sns = s_1 s_2 \dots s_n,字符仅包含 p\texttt{p}s\texttt{s}.\texttt{.}(点)。判断是否存在一个长度为 nn 的排列^\ast pp,满足对于所有整数 ii1in1 \le i \le n):

  • si=ps_i = \texttt{p},则 [p1,p2,,pi][p_1, p_2, \dots, p_i] 构成一个长度为 ii 的排列;
  • si=ss_i = \texttt{s},则 [pi,pi+1,,pn][p_i, p_{i+1}, \dots, p_n] 构成一个长度为 ni+1n-i+1 的排列;
  • si=.s_i = \texttt{.},则无额外限制。

^\ast 长度为 nn 的排列是指由 11nnnn 个不同整数任意顺序组成的数组。例如,[2,3,1,5,4][2,3,1,5,4] 是一个排列,但 [1,2,2][1,2,2] 不是排列(数字 22 重复出现),[1,3,4][1,3,4] 也不是排列(n=3n=3 但数组中包含 44)。


输入格式

每个测试文件包含多组测试数据。 第一行输入一个整数 tt1t1041 \le t \le 10^4),表示测试用例的数量。

每组测试数据的格式如下: 第一行输入一个整数 nn1n5001 \le n \le 500),表示字符串 ss 的长度。 第二行输入一个长度为 nn 的字符串 ss,仅由字符 p\texttt{p}s\texttt{s}.\texttt{.} 组成。

保证所有测试用例的 nn 之和不超过 50005000


输出格式

对于每组测试数据,输出 YES\texttt{YES}NO\texttt{NO}。如果存在满足条件的排列则输出 YES\texttt{YES},否则输出 NO\texttt{NO}

你可以以任意大小写形式输出答案。例如,yEs\texttt{yEs}yes\texttt{yes}Yes\texttt{Yes}YES\texttt{YES} 都会被判定为正确答案。


样例输入

9
4
s.sp
6
pss..s
5
ppppp
2
sp
4
.sp.
8
psss....
1
.
8
pspspsps
20
....................

样例输出

YES
NO
YES
YES
NO
NO
YES
NO
YES

样例说明

在第一个测试用例中,满足条件的一个排列是 p=[3,4,1,2]p = [3,4,1,2]。限制条件如下:

  • s1=ss_1 = \texttt{s}[p1,p2,p3,p4]=[3,4,1,2][p_1,p_2,p_3,p_4] = [3,4,1,2] 构成排列;
  • s2=.s_2 = \texttt{.}:无额外限制;
  • s3=ss_3 = \texttt{s}[p3,p4]=[1,2][p_3,p_4] = [1,2] 构成排列;
  • s4=ps_4 = \texttt{p}[p1,p2,p3,p4]=[3,4,1,2][p_1,p_2,p_3,p_4] = [3,4,1,2] 构成排列。

在第二个测试用例中,可以证明不存在满足所有约束的排列。

在第三个测试用例中,满足条件的一个排列是 p=[1,2,3,4,5]p = [1,2,3,4,5]