題目
編寫一個程式,輸入一個字串,然後採用如下的規則對該字串當中的每一個字元進行壓縮:
(1) 如果該字元是空格,則保留該字元;
(2) 如果該字元是第一次出現或第三次出現或第六次出現,則保留該字元;
(3) 否則,刪除該字元。
例如,若使用者輸入「occurrence」,經過壓縮後,字元c的第二次出現被刪除,第一和第三次出現仍保留;字元r和e的第二次出現均被刪除,因此最後的結果為:「ocurenc」。
輸入格式:輸入只有一行,即原始字串。
輸出格式:輸出只有一行,即經過壓縮以後的字串。
#include<iostream>
#include<algorithm>
using namespace std;
int main(void)
{
//freopen("in.txt","r",stdin);
string str,strx;
//cin>>str;
getline(cin,str);
for(string::iterator i=str.begin();i<str.end();i++)
{
int k=count(str.begin(),i,*i)+1;
if(*i==' ')
strx=strx+(*i);
else if(k==1||k==3||k==6)
strx=strx+(*i);
}
cout<<strx;
return 0;
}