牛牛有n張卡片排成乙個序列.每張卡片一面是黑色的,另一面是白色的。初始狀態的時候有些卡片是黑色朝上,有些卡片是白色朝上。牛牛現在想要把一些卡片翻過來,得到一種交替排列的形式,即每對相鄰卡片的顏色都是不一樣的。牛牛想知道最少需要翻轉多少張卡片可以變成交替排列的形式。
輸入描述:
輸入包括乙個字串s,字串長度length(3 ≤ length ≤ 50),其中只包含'w'和'b'兩種字串,分別表示白色和黑色。整個字串表示卡片序列的初始狀態。
輸出描述:
輸出乙個整數,表示牛牛最多需要翻轉的次數。
輸入例子:
bbbw
輸出例子:
1
#include using namespace std;/***********************
1.定義四個變數
nevenwhite: 偶數字置白色個數
nevenblack: 偶數字置黑色個數
noddwhite: 奇數字置白色個數
noddblack: 奇數字置黑色個數
2.則最終
把偶數字置的白色變為黑色,奇數字置黑色變成白色
把奇數字置的白色變成黑色,偶數字置的黑色變成白色
3.結果即是上樹兩種結果最小值
************************/
int main(){
string str;
cin>>str;
int ncount = str.length();
int nevenwhite = 0;
int nevenblack = 0;
int noddwhite = 0;
int noddblack = 0;
for(int i= 0;inevenblack+noddwhite?nevenblack+noddwhite:nevenwhite+noddblack;
cout<
1 黑白卡片 全國模擬(四)
程式設計題 黑白卡片 時間限制 1秒 空間限制 32768k 牛牛有n張卡片排成乙個序列.每張卡片一面是黑色的,另一面是白色的。初始狀態的時候有些卡片是黑色朝上,有些卡片是白色朝上。牛牛現在想要把一些卡片翻過來,得到一種交替排列的形式,即每對相鄰卡片的顏色都是不一樣的。牛牛想知道最少需要翻轉多少張卡...
YTU 2845 程式設計題AB 卡片遊戲
時間限制 1 sec 記憶體限制 128 mb 提交 30 解決 13 小明對數字的序列產生了興趣 現有許多張不同的數字卡片,用這若干張卡片能排列出很多序列,要求算出這若干張不同卡片的全排列總數,並按從小到大的順序輸出這些序列。輸入數字n,表示輸入數字序列個數,接著輸入n個不同的數字,代表n張卡片上...
程式設計之美 黑白球問題
題目 有乙個桶,裡面有白球 黑球各100個,人們必須按照以下的規則把球取出來 1 每次從桶裡面拿出來兩個球 2 如果是兩個同色的球,就再放入乙個黑球 3 如果是兩個異色的球,就再放入乙個白球 問 最後桶裡面只剩下乙個黑球的概率是多少?思路1 找規律 使用 黑球個數,白球個數 來表示桶中黑球和白球的個...