小紫的01串操作
题号:NC289975
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

\hspace{15pt}对于给定的仅由字符 \texttt{`0'}\texttt{`1'} 组成的字符串,小红和小紫可以进行以下操作:
\hspace{23pt}\bullet\,小红可以选择一个全 \texttt{`1'} 字符组成的连续子串,将其变成全 \texttt{`0'}
\hspace{23pt}\bullet\,小紫可以选择一个全 \texttt{`0'} 字符组成的连续子串,将其变成全 \texttt{`1'}
\hspace{15pt}两人均可操作最多一次,且顺序可以自行指定。小紫想知道,她能否和小红合作让字符串的所有字符都变成相同?

\hspace{15pt}连续子串为从原字符串中,连续的选择一段字符(可以全选、可以不选)得到的新字符串。

输入描述:

\hspace{15pt}每个测试文件均包含多组测试数据。第一行输入一个整数 T\left(1\leqq T\leqq 10^3\right) 代表数据组数,每组测试数据描述如下:
\hspace{15pt}在一行上输入一个仅由字符 \texttt{`0'}\texttt{`1'} 组成的字符串 s,代表初始字符串。

\hspace{15pt}除此之外,保证单个测试文件的字符串长度之和不超过 10^5

输出描述:

\hspace{15pt}对于每一组测试数据,新起一行。如果字符串可以变成所有字符都相同的状态,输出 \rm Yes;否则输出 \rm No
示例1

输入

复制
3
10101
111000
10011010110

输出

复制
Yes
Yes
No

说明

\hspace{15pt}对于第一组测试数据,过程如下:
\hspace{23pt}\bullet\,小红先手操作,选择橙色部分 \texttt{,得到 \texttt{
\hspace{23pt}\bullet\,小紫接着操作,选择橙色部分 \texttt{,得到 \texttt{
\hspace{15pt}因此,字符串可以变成所有字符都相同的状态。

\hspace{15pt}对于第二组测试数据,过程如下:
\hspace{23pt}\bullet\,小紫先手操作,选择橙色部分 \texttt{,得到 \texttt{
\hspace{23pt}\bullet\,小红不操作;
\hspace{15pt}至此,字符串已经变成所有字符都相同的状态。操作方案不唯一。