華為筆試-刪除字串中出現次數最少的字元
阿新 • • 發佈:2018-11-10
題目描述
實現刪除字串中出現次數最少的字元,若多個字元出現次數一樣,則都刪除。輸出刪除這些單詞後的字串,字串中其它字元保持原來的順序。
輸入描述:
字串只包含小寫英文字母, 不考慮非法輸入,輸入的字串長度小於等於20個位元組。
輸出描述:
刪除字串中出現次數最少的字元後的字串。
示例1
輸入
abcdd
輸出
dd
程式碼如下
#include <iostream> #include <string> #include <vector> #include <algorithm> using namespace std; int main() { string s; while(getline(cin,s)) { int a[26]={0}; int n=s.size(); for(int i=0;i<n;++i) { a[s[i]-'a']++; } int mi=a[s[0]-'a'];//出現最少的字元次數 for(int i=1;i<n;++i) { if (a[s[i]-'a']<mi) { mi=a[s[i]-'a'];//出現最少的字元次數 } } for(int i=0;i<n;++i) { if (a[s[i]-'a']>mi) cout<<s[i]; } cout<<endl; } return 0; }