#ZK1031. 小明关灯

小明关灯

题目描述

小明面前有一排共 NN 个开关,每个开关有两种状态:A(关闭)和 B(打开)。现在小明想通过以下两种操作,让所有开关最终都处于 A 状态:

  1. 单点切换:选择任意一个开关,将它的状态反转(ABBA)。
  2. 前缀切换:选择一个整数 KK1KN1 \leq K \leq N),将前 KK 个开关的状态全部反转。

请帮小明计算,最少需要多少次操作,才能让所有开关都变成 A

输入格式

  • 第一行:一个整数 NN,表示开关的数量。
  • 第二行:一个长度为 NN 的字符串,每个字符是 AB,表示初始时每个开关的状态(从左到右依次为第 1 个到第 NN 个开关)。

输出格式

一行整数,表示将所有开关变为 A 所需的最少操作次数。

输入输出样例 #1

输入 #1

4
ABBA

输出 #1

2

输入输出样例 #2

输入 #2

5
BBABB

输出 #2

2

输入输出样例 #3

输入 #3

12
AAABBBAAABBB

输出 #3

4

数据范围

对于 40%40\% 的数据:1N1031 \leq N \leq 10^3

对于 100%100\% 的数据:1N1061 \leq N \leq 10^6,输入字符串仅包含 AB