题目描述
在美丽的尧山,有一个大广场,50周年校庆的时候Solo就在大广场上见证了史上最壮观的焰火。
在广场上有一排方砖是有颜色的,被涂上红色或者绿色,从左到右排列。现在校方要求重新喷涂颜色,但不一定要每一块方砖都重新喷涂,因为校方的目的是:每一块红色的方砖都至少在绿色方砖的左边(也就是每一个红的左边不能有绿的),并且尽量喷涂最少的次数。
解答要求
时间限制:1000ms, 内存限制:64MB
输入
输入只有一行,包含一个字符串S,且只包含’R’(代表红色)或者’G’(代表绿色)。
我们保证字符串S的长度L的范围是(0 < L < 50 )。
输出
输出需要重新喷涂的方砖的最少数量。
样例
输入样例 1 复制
RGRGR
输出样例 1
2
int main(){
char str[50];
scanf("%s",str);
int len=strlen(str);
int count=0;
int left_g;
int right_r;
for(int i=0;i<len;i++){
if(str[i]=='G')
count++;
}
int i;
int j;
for(int i=0;i<len;i++){
left_g=0;
right_r=0;
for(int j=0;j<i;j++){
if(str[j]=='G') left_g++;
}
for( j=i;j<len;j++) {
if(str[j]=='R') right_r++;
}
if((left_g+ right_r)<count)
count=left_g+ right_r;
}
printf("%d",count);
return 0;
}