• L1-023 输出GPLT (20分)


    L1-023 输出GPLT (20分)

    给定一个长度不超过 (10000) 的、仅由英文字母构成的字符串。请将字符重新调整顺序,按 GPLTGPLT.... 这样的顺序输出,并忽略其它字符。当然,四种字符(不区分大小写)的个数不一定是一样多的,若某种字符已经输出完,则余下的字符仍按 GPLT 的顺序打印,直到所有字符都被输出。

    输入格式:

    输入在一行中给出一个长度不超过 (10000) 的、仅由英文字母构成的非空字符串。

    输出格式:

    在一行中按题目要求输出排序后的字符串。题目保证输出非空。

    输入样例:

    pcTclnGloRgLrtLhgljkLhGFauPewSKgt
    

    输出样例:

    GPLTGPLTGLTGLGLL
    

    代码:

    #include<bits/stdc++.h>
    using namespace std;
    char x,y[]={'G','P','L','T'};
    map<char,int>m;
    int main()
    {
        while(cin>>x)m[toupper(x)]++;
        while(m['G']+m['P']+m['L']+m['T'])
        {
            for(int i=0;i<4;i++)
                if(m[y[i]])
                {
                    cout<<y[i];
                    m[y[i]]--;
                }
        }
        return 0;
    }
    
  • 相关阅读:
    栈的操作总结
    C语言复习大纲
    生理周期
    石子合并
    幸运数字
    最长&最短文本
    C++引用
    C++入门
    直角三角形
    思维的囚徒--读书摘记和自己的肤浅解读--2021.1
  • 原文地址:https://www.cnblogs.com/LengYun/p/13138028.html
Copyright © 2020-2023  润新知