時間限制:1秒
空間限制:32768K
牛牛喜歡彩色的東西,尤其是彩色的瓷磚。牛牛的房間内鋪有L塊正方形瓷磚。每塊磚的顔色有四種可能:紅、綠、藍、黃。給定一個字元串S, 如果S的第i個字元是’R’, ‘G’, ‘B’或’Y’,那麼第i塊瓷磚的顔色就分别是紅、綠、藍或者黃。
牛牛決定換掉一些瓷磚的顔色,使得相鄰兩塊瓷磚的顔色均不相同。請幫牛牛計算他最少需要換掉的瓷磚數量。
輸入描述:
輸入包括一行,一個字元串S,字元串長度length(1 ≤ length ≤ 10),字元串中每個字元串都是’R’, ‘G’, ‘B’或者’Y’。
輸出描述:
輸出一個整數,表示牛牛最少需要換掉的瓷磚數量
#include<iostream>
#include<cstring>
using namespace std;
int main()
{
char c[10];
char a[4]={'R','G','B','Y'};
int i,j,k;
while(cin>>c)
{ j=0;
for(i=0;i<strlen(c)-2;i++)
if(c[i]!=c[i+1]) ;
else {
j++;
for(k=0;k<4;k++)
if(a[k]!=c[i]&&a[k]!=c[i+2]) c[i+1]=a[k];
}
if(c[strlen(c)-1]==c[strlen(c)-2]) j=j+1;
cout<<j<<endl;
}
return 0;
}