L1-023 输出GPLT (20 分)

简介: L1-023 输出GPLT (20 分)

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


输入格式:

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


输出格式:

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


输入样例:

pcTclnGloRgLrtLhgljkLhGFauPewSKgt

结尾无空行


输出样例:

GPLTGPLTGLTGLGLL


#include<iostream>
using namespace std;
int g,p,l,t;//记录出现次数
int main()
{
    string s;
    cin>>s;
    for(auto x:s)//遍历
    {
        if(x=='g'||x=='G') g++;
        else if(x=='p'||x=='P') p++;
        else if(x=='l'||x=='L') l++;
        else if(x=='t'||x=='T') t++;
    }
    while(g>0||p>0||l>0||t>0)//只要一个不为零就继续循环
    {
        if(g>0) cout<<'G';//按顺序输出
        if(p>0) cout<<'P';
        if(l>0) cout<<'L';
        if(t>0) cout<<'T';
        g--,p--,l--,t--;
    }
    return 0;
}
目录
相关文章
|
2月前
1042 字符统计 (20 分)
1042 字符统计 (20 分)
|
3月前
习题6-3 使用函数输出指定范围内的完数 (20分)
习题6-3 使用函数输出指定范围内的完数 (20分)
|
3月前
L1-023 输出GPLT
L1-023 输出GPLT
25 0
|
3月前
|
C++
【PTA】​L1-023 输出GPLT ​ (C++)
【PTA】​L1-023 输出GPLT ​ (C++)
35 0
【PTA】​L1-023 输出GPLT ​ (C++)
|
3月前
输出GPLT(2016)
输出GPLT(2016)
34 0
|
10月前
华为机试HJ58:输入n个整数,输出其中最小的k个
华为机试HJ58:输入n个整数,输出其中最小的k个
输出1234无重复的三位数
输出1234无重复的三位数
96 0
|
算法
输出1234无重复三位数
输出1234无重复三位数
77 0
输出三个乘法表,按照完整乘法表、下三角乘法表、上三角乘法表的顺序输出,每个表中间空一行。对于每个乘法表,首行升序输出的 11 到 99 数与数之间恰好有三个空格,接下来 10 行每栏内容都需要
输出三个乘法表,按照完整乘法表、下三角乘法表、上三角乘法表的顺序输出,每个表中间空一行。对于每个乘法表,首行升序输出的 11 到 99 数与数之间恰好有三个空格,接下来 10 行每栏内容都需要
61 0
输入7个整数(0-100),代表7个整数,用空格隔开.小数点后保留两位小数,每行输入后换行.去掉一个最高分一个最低分,输出每组的平均分.用一个循环完成(7个面试官问题)
输入7个整数(0-100),代表7个整数,用空格隔开.小数点后保留两位小数,每行输入后换行.去掉一个最高分一个最低分,输出每组的平均分.用一个循环完成(7个面试官问题)
138 0
输入7个整数(0-100),代表7个整数,用空格隔开.小数点后保留两位小数,每行输入后换行.去掉一个最高分一个最低分,输出每组的平均分.用一个循环完成(7个面试官问题)