第十一屆藍橋杯 B組 真題G:解碼

[問題描述]
小明有-串很長的英文字母,可能包含大寫和小寫。
在這串字母中,有很多連續的是重複的。小明想了一個辦法將這串字母表
達得更短:將連續的幾個相同字母寫成字母+出現次數的形式。
例如,連續的5個a,即aaaaa,
小明可以簡寫成a5(也可能簡寫成a4a、
aa3a等)。對於這個例子: HHlllloo,小明可以簡寫成H3el5o2。爲了方便表
達,小明不會將連續的超過9個相同的字符寫成簡寫的形式。.
現在給出簡寫後的字符串,請幫助小明還原成原來的串。
[輸入格式]
輸入一行包含一一個字符串。
[輸出格式]
輸出一個字符串,表示還原後的串。
[樣例輸入]
H3e15o2
[樣例輸出]
HHHellllloo

#include<Stdio.h>
#include<string.h>
int main()
{
	char str[100];
	gets(str);
	int l=strlen(str);
    int i;
    for(i=0;i<l;i++)
    {
    	int j,cns=0;
    	if(str[i+1]>=48&&str[i+1]<=58)
    	{
    		cns=(int)str[i+1]-48;
    		for(j=1;j<=cns;j++)
    		{
    			printf("%c",str[i]);
			}
			i++;
			continue;
		}
		else printf("%c",str[i]);
	}
	return 0;	
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章