问题 P: 照相

内存限制:128 MB 时间限制:1 S
题面:传统 评测方式:文本比较 上传者:
提交:235 通过:119

题目描述

迫切希望在郡县集市上赢得最佳奶牛摄影师的农夫约翰正在尝试为他的 N 头奶牛拍摄一张完美的照片。 

农夫约翰拥有两种品种的奶牛:更赛牛(Guernsey)和荷斯坦牛(Holstein)。

为了使他的照片尽可能地艺术,他想把他的奶牛排成一排,使得尽可能多的更赛牛处于队列中的偶数位置(队列中的第一个位置是奇数位置,下一个是偶数位置,以此类推)。

由于他与他的奶牛缺乏有效的沟通,他可以达到目的的唯一方法是让他的奶牛的偶数长的「前缀」进行反转(一个前缀指的是对于某个位置 j,从第一头奶牛到第 j 头奶牛范围内的所有奶牛)。

请计算农夫约翰达到目的所需要的最小反转次数。

输入格式

输入的第一行包含 N 的值。

第二行包含一个长为 N 的字符串,给出初始时所有奶牛从左到右的排列方式。每个 H 代表一头荷斯坦牛,每个 G 代表一头更赛牛。

输出格式

输出一行,包含达到目的所需要的最小反转次数。

数据范围

2≤N≤2×105N 为偶数。

输入样例:

14
GGGHGHHGHHHGHG

输出样例:

1

样例解释

在这个例子中,只需反转由前六头奶牛组成的前缀即可。

GGGHGHHGHHHGHG (反转前) -> HGHGGGHGHHHGHG (反转后) 

在反转之前,四头更赛牛处于偶数位置。

反转后,六头更赛牛处于偶数位置。不可能使得超过六头更赛牛处于偶数位置。

输入格式

14
GGGHGHHGHHHGHG


1

输入样例 复制

12
GHHGHGGHHGGH

输出样例 复制

5