問題描述:
有一種簡單的字串壓縮方法,對於字串連續出現的同乙個字元,用該字串加上連續出現
的次數來表示(連續出現次數小於3時不壓縮),例如,字串aaaaabbbabaaaaaaaaaaaaabbbb可
壓縮為a5b3aba13b4。請設計乙個程式,將採用該壓縮方法得到字串的解壓縮,還原出原字串並輸出。
輸入格式說明:
在一行上輸入乙個字串。(長度不超過50)
輸出格式:
在一行輸出解壓縮後的字串(長度不超過100)
問題的難點在於判斷數字的大小,通過分析,碰到數字時,進行遍歷,把連續的數字遍歷完。並將數字前字母進行儲存,然後新增
#include
#include
intmain
(void
)else
}//更新i(把i的位置放到最後一位數字上)
i=j-1;
//新增字元
for(j=
0;j1;j++)}
else
} result[index]
='\0'
;printf
("%s"
,result)
;return0;
}
領扣 解壓字串
小q想要給他的朋友傳送乙個神秘字串,但是他發現字串太長了,於是小q發明了一種壓縮演算法對字串中重複的部分進行了壓縮,對於字串中連續的m個相同字串s將會壓縮為 m s m為乙個整數且1 m 100 例如字串abcabcabc將會被壓縮為 3 abc 現在小a收到了小q傳送過來的字串,你能幫助他進行解壓...
C 壓縮 解壓字串
呼叫壓縮方法 string compstr abcdefg var rawstr getstringbydataset compstr region 壓縮 根據dataset壓縮字串 public static string getstringbydataset string ds 將傳入字串以gz...
Zip加解壓字串
二 字串壓縮 將傳入的二進位制字串資料以zip演算法解壓縮 經gzip壓縮後的二進位制字串 原始未壓縮字串 public static string zipdecompressstring this string zippedstring else byte b convert.frombase64...