P8672 [蓝桥杯 2018 国 C] 交换次数
题目描述
IT 产业人才需求节节攀升。业内巨头百度、阿里巴巴、腾讯(简称 BAT)在某海滩进行招聘活动。
招聘部门一字排开。由于是自由抢占席位,三大公司的席位随机交错在一起,形如:
`ABABTATT`,这使得应聘者十分别扭。
于是,管理部门要求招聘方进行必要的交换位置,使得每个集团的席位都挨在一起。即最后形如:
`BBAAATTT` 这样的形状,当然,也可能是:
`AAABBTTT` 等。
现在,假设每次只能交换 $2$ 个席位,并且知道现在的席位分布,
你的任务是计算:要使每个集团的招聘席位都挨在一起需要至少进行多少次交换动作。
输入格式
输入是一行 $n$ 个字符(只含有字母 `B`、`A` 或 `T`),表示现在的席位分布。
输出格式
输出是一个整数,表示至少交换次数。
说明/提示
输入字符串的长度 $n$ 不大于 $10^5$。
时限 1 秒, 256M。蓝桥杯 2018 年第九届国赛