通過鍵盤輸入一串小寫字母(a~z)組成的字串。請編寫乙個字串壓縮程式,將字串中連續出席的重複字母進行壓縮,並輸出壓縮後的字串。
壓縮規則:
1. 僅壓縮連續重複出現的字元。比如字串"abcbc"由於無連續重複字元,壓縮後的字串還是"abcbc".
2. 壓縮欄位的格式為"字元重複的次數+字元"。例如:字串"***yyyyyyz"壓縮後就成為"3x6yz"
示例 輸入:「cccddecc」 輸出:「3c2de2c」
輸入:「adef」 輸出:「adef」
輸入:「pppppppp」 輸出:「8p」
#include#includeusing namespace std;
int main()
}else
} }return longeststr;
}int main()
}else
} }return longeststr;
}string diff(string a,string b)
{ string result = "";
while(true) {
string maxsub = getlongestcomsub(a,b);
if(maxsub.length() == 0)
break;
//a = a.replace(a.find(maxsub),maxsub.length(),"0");
//b = b.replace(b.find(maxsub),maxsub.length(),"1");
int m=a.find(maxsub);
int n=m;
while(m
將輸入的字串(字串僅包含小寫字母『a』
到『z』
),按照如下規則,迴圈轉換後輸出:
a->b,b->c,…,y->z,z->a
;若輸入的字串連續出現兩個字母相同時,後乙個字母需要連續轉換
2次。例如:
aa 轉換為 bc,
zz 轉換為
ab;當連續相同字母超過兩個時,第三個出現的字母按第一次出現算。
要求實現函式:
void convert(char *input,char* output)
【輸入】 char *input ,
輸入的字串
【輸出】 char *output
,輸出的字串
【返回】 無
#include#includeusing namespace std;
int main()
{ string str,str1;
getline(cin,str);
int flag=0;
for(int i=0;i
小程式練手(c )
給定乙個陣列input 如果陣列長度n為奇數,則將陣列中最大的元素放到 output 陣列最中間的位置,如果陣列長度n為偶數,則將陣列中最大的元素放到 output 陣列中間兩個位置偏右的那個位置上,然後再按從大到小的順序,依次在第乙個位置的兩邊,按照一左一右的順序,依次存放剩下的數。例如 inpu...
練手小程式(四)
這次的練手程式依然來自於knight lab的部落格文章five mini programming projects for the python beginner,任務的名字叫做textbased adventure game,也就是文字冒險遊戲 目標 我們的目標是完整的建立乙個文字小遊戲,這個小...
python練手小程式
python小白 usr bin env python coding utf 8 time 2019 11 5 8 53 author october file py 整數序列求和 n input 請輸入整數n sum 0 for i in range int n sum i 1print 1到n求...