#73. 特殊字符串

特殊字符串

题目背景

Y 同学在研究字符串的对称与重复之美时,定义了一种他称之为 “1122 字符串” 的特殊结构。这种字符串在局部和全局上都表现出高度的规律性。他希望你编写一个程序来帮助他快速识别这种字符串。

题目描述

我们称一个字符串 TT“1122 字符串”,当且仅当它同时满足以下三个条件:

  1. 字符串 TT 的长度 T|T| 是一个偶数。
  2. 对于任意满足 1iT21 \le i \le \frac{|T|}{2} 的整数 ii,字符串 TT 的第 (2i1)(2i-1) 个字符与第 2i2i 个字符必须相等。
  3. TT 中出现的每一种字符,其出现次数都恰好为 2

现在,给定一个只包含小写英文字母的字符串 SS,请你判断它是否为一个 “1122 字符串”。

输入格式

输入一行,包含一个字符串 SS

输出格式

如果字符串 SS 是一个 “1122 字符串”,则输出 Yes。否则,输出 No

样例

样例输入 #1

aabbcc

样例输出 #1

Yes

样例输入 #2

aab

样例输出 #2

No

样例输入 #3

zzzzzz

样例输出 #3

No

提示

样例解释

  • 样例 1: S=‘aabbcc‘S = \text{`aabbcc`}

    1. 长度为 6,是偶数。
    2. S1=S2=‘a‘S_1=S_2=\text{`a`}, S3=S4=‘b‘S_3=S_4=\text{`b`}, S5=S6=‘c‘S_5=S_6=\text{`c`}。相邻对均相等。
    3. 字符 'a', 'b', 'c' 的出现次数均为 2。 所有条件均满足,因此是 “1122 字符串”。
  • 样例 2: S=‘aab‘S = \text{`aab`}

    1. 长度为 3,是奇数。不满足第一个条件。 因此不是 “1122 字符串”。
  • 样例 3: S=‘zzzzzz‘S = \text{`zzzzzz`}

    1. 长度为 6,是偶数。
    2. 相邻对均相等。
    3. 字符 'z' 出现了 6 次,不满足第三个条件。 因此不是 “1122 字符串”。

数据范围与约定

  • SS 是一个由小写英文字母构成的字符串。
  • 1S1001 \le |S| \le 100