荷兰国旗问题

荷兰国旗问题

描述 

荷兰国旗有三横条块构成,自上到下的三条块颜色依次为红、白、蓝。现有若干由红、白、蓝三种颜色的条块序列,要将它们重新排列使所有相同颜色的条块在一起。本问题要求将所有红色的条块放最左边、所有白色的条块放中间、所有蓝色的条块放最右边。

输入第1行是一个正整数n(n<100),表示有n组测试数据。接下来有n行,每行有若干个由R,W,B三种字符构成的字符串序列,其中R,W和B分别表示红、白、蓝三种颜色的条块,每行最多有1000个字符。输出对输入中每行上由R,W,B三种字符构成的字符串序列,将它们重新排列使所有相同颜色的条块在一起,满足前述要求。样例输入

3
BBRRWBWRRR
RRRWWRWRB
RBRW 

样例输出

RRRRRWWBBB
RRRRRWWWB
RRWB 
 
#include <iostream>
#include <string>
using namespace std;

int main(void)
{
int n;
string str;
int c1,c2,c3;
cin>>n;
while(n--){
    cin>>str;
    c1=0,c2=0,c3=0;
    int m = str.size();
    for(int i=0;i<m;i++)
    {
        if(str[i]=='B')
            c1 ++;
        if(str[i]=='W')
            c2 ++;
        if(str[i]=='R')
            c3 ++;
    }
    for(int i=0;i<c3;i++)
        cout<<'R';
    for(int i=0;i<c2;i++)
        cout<<'W';
    for(int i=0;i<c1;i++)
        cout<<'B';
    cout<<endl;
}


return 0;
}        

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏codelang

用kotlin来实现一个饼图

11720
来自专栏Android知识点总结

Android原生绘图之炫酷倒计时

48340
来自专栏练小习的专栏

制作高大上的Canvas粒子动画

制作粒子动画效果要解决两个问题:一个是粒子动画轨迹,另外一个是粒子执行动画的时机。 首先来看下我们准备要做的粒子动画效果是怎么样的~ 是这样(粒子漂浮): ...

575100
来自专栏偏前端工程师的驿站

CSS魔法堂:你真的懂text-align吗?

前言 也许提及text-align你会想起水平居中,但除了这个你对它还有多少了解呢?本篇打算和大家一起来跟text-align来一次负距离的交往,你准备好了吗?...

23070
来自专栏Jack的Android之旅

自定义天气显示温度变化的LinearChart控件

这次发表的是前几个月搞定的一个自定义控件,那时自己在写一个小的查看天气的软件,在这过程中就涉及了显示天气变化的折线图,一开始想用一些画图框架来解决问题,不过考虑...

28510
来自专栏walterlv - 吕毅的博客

WPF 绘制对齐像素的清晰显示的线条

发布于 2017-12-12 13:49 更新于 2018-08...

16610
来自专栏练小习的专栏

CSS 3D动画概述菜鸟级解读之一

无论你是前端还是设计师,相信你在网页二维空间上的操作早已经得心应手,JS处理时间线的动画也早已经烂熟于胸。从今天开始,我跟大家分享一些“新”的东西,网页的第三个...

22180
来自专栏codelang

用kotlin来实现一个打方块的小游戏

15210
来自专栏生信宝典

AI科研绘图(二):模式图的基本画法

经过上次对基本元素和工具的学习(AI科研绘图(一):零基础入门和基本图形绘制),我们基本上掌握了最常用和基础的工具的用法。

1.1K30
来自专栏Coco的专栏

谈谈一些有趣的CSS题目(二)-- 从条纹边框的实现谈盒子模型

15620

扫码关注云+社区

领取腾讯云代金券