強大的位運算

2021-06-25 14:19:54 字數 776 閱讀 9236

time limit: 1 sec  

memory limit: 128 mb

submit: 2  

solved: 2 [

submit][

status][

web board]

你現在有一條水晶鏈,上面鑲著n個珠子,每個珠子可能是紅色(r),綠色(g)或者藍色(b)。indira有一種神奇的魔法,就是可以將相鄰兩個不同顏色的珠子合併起來,變成乙個第三種顏色的珠子。例如,如果我們的項鍊是

r g r b

然後我們合併前兩個珠子,於是鍊子就會變成

b r b

很顯然,通過不同的合併方式,我們最終可以得到不同種類的新鏈。你的任務是幫indira找到這其中最短的那一條的長度。

測試資料第一行是乙個整數t(t≤20),表示測試資料的組數。

每組測試資料只包括乙個長度不超過105的字串,表示給出的初始的鏈。字串只會包含字元'r', 'g'和'b'。

對於每組測試資料,輸出我們能得到的最短鏈長。

2

bbrgbb

2

1

cpc23 2014-2

如果字母不全相同的話答案只可能是1或2,兩個相同的用字母0表示,其它三個分別用1,2,3表示

#include #include #include using namespace std;

int ans(char ch)

int main()

int sum = 0;

if(same) cout<

強大的位運算

位運算讓計算機的操作變得簡單並且迅速,掌握位運算的常見用法可以迅速解決一些看似複雜的題目,理解位運算也能讓我們更透徹的理解計算機。位運算子 1.按位與,若相應二進位制位均為1,則結果的此二進位制位為1否則為0,簡單來說就是如果有乙個0就為0,兩個1才為1與按位或相反。2.按位或,若相應二進位制位只要...

位運算的強大與幾個應用

4 100 分別於4按位與運算 5 101 100 6 110 100 7 111 100 8 1000 0000 3 11 000 推導出在2 n到2 n 1 之間一直按位與結果都是2 n 托公尺完成了1317的上乙個任務,十分高興,可是考驗還沒有結束 說話間1317給了托公尺 n 個自然數 a1...

位運算 57 普通的位運算

要求說明 當 a 2,b 4,c 6,d 8時程式設計求a c b d a d a的值。解 單目運算子 都是對對應整數轉化成二進位制數後按位比較計算 兩個相應二進位中,都為1,該位為1,否則為0 兩個相應二進位中,有乙個1,該位為1,否則為0 兩個相應二進位,相同為0,不同為1 單目運算子,作用對二...