Problem Description 讀入一個字符串,字符串中包含ZOJ三個字符,個數不一定相等,按ZOJ的順序輸出,當某個字符用完時,剩下的仍然按照ZOJ的順序輸出。 Input 題目包含多組用例,每組用例占一行,包含ZOJ三個字符,當輸入“E”時表示輸入結束。 1<=length<=100。 Output 對於每組輸入,請輸出一行,表示按照要求處理後的字符串。 具體可見樣例。 Sample Input ZZOOOJJJ ZZZZOOOOOJJJ ZOOOJJ E Sample Output ZOJZOJOJ ZOJZOJZOJZOO ZOJOJO [cpp] #include <iostream> #include <cstdio> #include <cstring> using namespace std; int main() { char str[1000]; int z,o,j; while(gets(str)) { if(!strcmp(str,"E")) break; z = o = j = 0; int len = strlen(str); int i; for(i = 0;i<len;i++) { if(str[i] == 'Z') z++; else if(str[i] == 'O') o++; else if(str[i] == 'J') j++; } while(z || o || j) { if(z) { cout << "Z"; z--; } if(o) { cout << "O"; o--; } if(j) { cout << "J"; j--; } } cout << endl; } return 0; }