题解 | ZOJ

#include<iostream>
#include<stdio.h>
#include<cstring>
#include<map>
using namespace std;

int main() {
    string s;
    while (cin >> s) {
        map<char, int>m;
        m['Z'] = m['O'] = m['J'];
        for(int i = 0; i < s.length(); i++)
        {
            m[s[i]]++;
        }
        while(m['Z'] > 0 || m['O'] > 0 || m['J'] > 0)
        {
            if(m['Z'] > 0)
                cout << 'Z';
                m['Z'] --;
            if(m['O'] > 0)
                cout << 'O';
                m['O'] --;
            if(m['J'] > 0)
                cout << 'J';
                m['J'] --;
        }
    }
}

只需要依次输出Z O J,然后要求一个条件,大于0,然后输出后数量减一即可

全部评论

相关推荐

02-05 08:18
四川大学 Java
在思考的熊熊很讨厌吃香菜:不是,我门头沟学院呢?这都没排上?
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务