#XA2403. 交替字符串(alternate)

交替字符串(alternate)

题目描述

给定一个只包含两种字符的字符串s,如果s的一个子串中不存在两个相邻的字符相同的情况,则认为这是一个交替子字符串。

需要注意的是,两个子串起始位置不同,终止位置不同,则认为他们是不同的子串。

求字符串s的交替子字符串的个数。

输入格式

从文件alternate.in中读入数据。

一行,一个字符串s,仅包含两种字符。

输出格式

输出到文件alternate.out中。

一个整数,表示字符串s的交替子字符串的个数。

样例 #1

样例输入 #1

abbb

样例输出 #1

5

提示:

【​样例解释1​】

共有“a“, “ab”,”b“, “b”, “b”五种不同的交替子串。

【​数据范围​】

对于30%30\%的数据,1s.size()1031\leq s.size() \leq 10^3

对于100%100\%的数据,1s.size()1061\leq s.size() \leq 10^6

保证输入数据只出现大写字母和小写字母且字符串中有且仅有两种字符。

来源:

2024 西安市信息学算法编程大赛小低组T3、小高组T1