時間限制:1.0s 記憶體限制:256.0mb
提交此題
問題描述
相信經過這個學期的程式設計訓練,大家對於字串的操作已經掌握的相當熟練了。今天,徐老師想測試一下大家對於字串操作的掌握情況。
徐老師自己定義了1,2,3,4,5這5個引數分別指代不同的5種字串操作,你需要根據傳入的引數,按照徐老師的規定,對輸入字串進行格式轉化。
徐老師指定的操作如下:
1 表示全部轉化為大寫字母輸出,如abc 變成 abc
2 表示全部轉換為小寫字母輸出,如abc變成abc
3 表示將字串整個逆序輸出,如 abc 變成 cba
4 表示將字串中對應的大寫字母轉換為小寫字母,而將其中的小寫字母轉化為大寫字母輸出,如 abc變成abc
5表示將全部轉換為小寫字母,並將其中所有的連續子串轉換為對應的縮寫形式輸出,比如abcd 轉換為a-d,其次,-至少代表1個字母,既如果是ab,則不需要轉換為縮寫形式。
輸入格式
一共一行,分別是指代對應操作的數字和字串,兩者以空格分隔,字串全部由英文本母組成
輸出格式
輸出根據上述規則轉換後對應的字串
樣例輸入
5 abcdee
樣例輸出
a-ee
資料規模和約定
輸入字串長度最長為200。
#includeusing namespace std;
int len=0;
void turn(char *c, int order)
int main()
else if(n==4)
for(i=0; iif(c[i]<='z' && c[i]>='a')c[i]-=32;
else c[i]+=32;
for(i=0; icout<}
if(n==5)else
if(j>=2)cout<<'-';
cout<}else for(i=0; icout<}
return 0;
}
演算法訓練 字串編輯
演算法訓練 字串編輯 時間限制 1.0s 記憶體限制 512.0mb 問題描述 從鍵盤輸入乙個字串 長度 40個字元 並以字元 結束。編輯功能有 1 d 刪除乙個字元,命令的方式為 d a 其中a為被刪除的字元,例如 d s 表示刪除字元 s 若字串中有多個 s 則刪除第一次出現的。2 i 插入乙個...
演算法訓練 字串統計
演算法訓練 字串統計 時間限制 1.0s 記憶體限制 512.0mb 問題描述 給定乙個長度為n的字串s,還有乙個數字l,統計長度大於等於l的出現次數最多的子串 不同的出現可以相交 如果有多個,輸出最長的,如果仍然有多個,輸出第一次出現最早的。輸入格式 第一行乙個數字l。第二行是字串s。l大於0,且...
演算法訓練 字串統計
這道題看懂了一點不難,用笨方法暴力就能解決。本來想著我的暴力方法不好,但和另乙個大神的 比較後發現,我的執行速度竟然快些。所以就來分享一下 了 演算法訓練 字串統計 時間限制 1.0s 記憶體限制 512.0mb 問題描述 給定乙個長度為n的字串s,還有乙個數字l,統計長度大於等於l的出現次數最多的...