字串消除

2021-10-01 11:24:31 字數 1003 閱讀 1628

心理信管計算概論 練習6 d

在乙個字串中,從左到右遍歷把連續的相同字元全部刪除, 然後將剩下的字元組成新的字串,繼續遍歷刪除相鄰的相同字元,直到沒有可以刪除的字元為止。

例如:字串asssaasddsc

第一遍刪除三個s,兩個a,兩個d,得到字串**『assc』**。

第二遍刪除兩個**『s』,得到字串』ac』**。

刪除結束,輸出字串『ac』

輸入一行,代表要進行消除的字串,字串長度不超過1000

輸出一行,代表消除後的字串,如果字串全部都被消除,輸出「null」

asssaasddsc

achhhhhhhhjkkkkkkkkkkklllj

null

#include

#include

#include

char a[

1001];

int n;

intdele()

//人生刪除事務所!!

i = i + j-1;

break;}

if(i + j == n -1)

//對於'……aaa'字串,就不能用上面的方法刪除,因為沒有下乙個不一樣的a[i+j]了}}

s =1;

}}for(

int i =

0; i < n; i++)}

tmp[k]

='\0'

;//結尾需要補\0才能copy

strcpy

(a, tmp)

;return s;

}int

main()

n =strlen

(a);

if(n ==0)

printf

("%s"

, a)

;return0;

}

字串消除

給定乙個字串,僅由a,b,c 3種小寫字母組成。當出現連續兩個不同的字母時,你可以用另外乙個字母替換它,如 有ab或ba連續出現,你把它們替換為字母c 有ac或ca連續出現時,你可以把它們替換為字母b 有bc或cb 連續出現時,你可以把它們替換為字母a。你可以不斷反覆按照這個規則進行替換,你的目標是...

字串消除

題目詳情 給定乙個字串,僅由a,b,c 3種小寫字母組成。當出現連續兩個不同的字母時,你可以用另外乙個字母替換它,如 有ab或ba連續出現,你把它們替換為字母c 有ac或ca連續出現時,你可以把它們替換為字母b 有bc或cb 連續出現時,你可以把它們替換為字母a。你可以不斷反覆按照這個規則進行替換,...

字串消除

小hi最近在玩乙個字元消除遊戲。給定乙個只包含大寫字母 abc 的字串s,消除過程是如下進行的 1 如果s包含長度超過1的由相同字母組成的子串,那麼這些子串會被同時消除,餘下的子串拼成新的字串。例如 abccbcccaa 中 cc ccc 和 aa 會被同時消除,餘下 ab 和 b 拼成新的字串 a...