java彩色瓷磚編程題分析
牛牛喜歡彩色的東西,尤其是彩色的瓷磚。牛牛的房間內(nèi)鋪有L塊正方形瓷磚。每塊磚的顏色有四種可能:紅、綠、藍、黃。給定一個字符串S, 如果S的第i個字符是'R', ‘G', ‘B'或'Y',那么第i塊瓷磚的顏色就分別是紅、綠、藍或者黃。
牛牛決定換掉一些瓷磚的顏色,使得相鄰兩塊瓷磚的顏色均不相同。請幫牛牛計算他最少需要換掉的瓷磚數(shù)量。
輸入描述:
輸入包括一行,一個字符串S,字符串長度length(1 ≤ length ≤ 10),字符串中每個字符串都是'R', ‘G', ‘B'或者'Y'。
輸出描述:
輸出一個整數(shù),表示牛牛最少需要換掉的瓷磚數(shù)量
示例1
輸入
RRRRRR
輸出
3
import java.util.Scanner;
public class repleaseColor {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str=sc.nextLine();
getNum(str);
}
private static void getNum(String str) {
// TODO Auto-generated method stub
char[] ch=str.toCharArray();
int tem=0;
int len=ch.length;
if(len>=2){
for(int i=1;i<len-1;i=i+2){
if(ch[i]==ch[i-1] || ch[i]==ch[i+1]){
tem++;
}
}
if(ch[len-1]==ch[len-2] && len%2==0){
tem++;
}
for(int i=2;i<len-2;i=i+2){
if(ch[i]==ch[i-1] && ch[i]==ch[i+1] && ch[i+1]!=ch[i+2] && ch[i-1]!=ch[i-2]){
tem--;
}
}
}
System.out.println(tem);
}
}
相關(guān)文章
SpringBoot獲取application.properties文件中文亂碼問題及解決
這篇文章主要介紹了SpringBoot獲取application.properties文件中文亂碼問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-05-05
Java concurrency集合之CopyOnWriteArraySet_動力節(jié)點Java學院整理
CopyOnWriteArraySet基于CopyOnWriteArrayList實現(xiàn),其唯一的不同是在add時調(diào)用的是CopyOnWriteArrayList的addIfAbsent(若沒有則增加)方法2017-06-06

