2065.字符串匹配判断

通过数:41提交数:106学校:中山大学保研机试真题 题目列表 标签
题目描述 给出一个字符串,判断能否形成不重复且不相交的两两匹配。 如字符串 $A = \text{“ABBACC”}$ 分别形成 $A$, $B$, $C$ 三对不重复的匹配,且每对匹配之间的连线不相交。 如字符串 $B = \text{“ABBAAA”}$ 可形成 $A$, $B$, $A$ 三对不相交的匹配,但有两对都是 $A$,重复。 如字符串 $C = \text{“ABABCC”}$ 可形成 $A$, $B$, $C$ 三对不重复的匹配,但 $A$ 的匹配和 $B$ 的匹配之间的连线相交。 题意简析 字符串由大写字母组成,每个字母出现恰好两次(形成一对匹配); 匹配的“线段”是连接两个相同字母在字符串中的两个位置; 所有线段必须不相交; 所有匹配的字母不能重复(即每个字母只能有一对)。 假设两个匹配线段分别是 [a1, a2] 和 [b1, b2],其中 a1 < a2,b1 < b2。 两个线段相交当且仅当: a1 < b1 < a2 < b2 或者 b1 < a1 < b2 < a2 输入格式 输入一个字符串 $S$,长度不超过 $1000$,仅包含大写字母。 输出格式 如果字符串 $S$ 能形成不重复且不相交的两两匹配,输出 $\text{“YES”}$,否则输出 $\text{“NO”}$。 输入样例 ABBACC 输出样例 YES
C
补全
点击调试按钮即可调试代码。

点击提交按钮即可提交代码。