荷兰国旗问题

时间限制: 3000 ms  |  内存限制: 65535 KB
难度: 1

描述

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

输入

第1行是一个正整数n(n<100),表示有n组测试数据。接下来有n行,每行有若干个由R,W,B三种字符构成的字符串序列,其中R,W和B分别表示红、白、蓝三种颜色的条块,每行最多有1000个字符。

输出

对输入中每行上由R,W,B三种字符构成的字符串序列,将它们重新排列使所有相同颜色的条块在一起,满足前述要求。

样例输入

3
BBRRWBWRRR
RRRWWRWRB
RBRW

样例输出

RRRRRWWBBB
RRRRRWWWB
RRWB 

来源

acm教材

#include<stdio.h>
#include<string.h>
int main()
{int n,i;char str[1010];scanf("%d",&n);while(n--){scanf("%s",str);int len = strlen(str),b,r,w;r=b=w=0;for(i=0;i<len;++i){if(str[i]=='B')b++;else if(str[i]=='R')r++;elsew++;}while(r--)printf("R");while(w--)printf("W");while(b--)printf("B");printf("\n");}return 0;
}

nyoj-荷兰国旗问题相关推荐

  1. NYOJ【268】荷兰国旗问题【字符串】

    荷兰国旗问题 时间限制: 3000 ms  |  内存限制: 65535 KB 难度: 1 描述 荷兰国旗有三横条块构成,自上到下的三条块颜色依次为红.白.蓝.现有若干由红.白.蓝三种颜色的条块序列, ...

  2. NYOJ 268 荷兰国旗问题

    荷兰国旗问题 时间限制: 3000 ms  |  内存限制: 65535 KB 难度: 1 描述 荷兰国旗有三横条块构成,自上到下的三条块颜色依次为红.白.蓝.现有若干由红.白.蓝三种颜色的条块序列, ...

  3. python单链表实现荷兰国旗问题_这道荷兰旗问题,我面试时遇到三次!

    01.题目示例 "荷兰国旗问题" 是计算机科学中的一个经典题目,它是由Edsger Dijkstra提出的.荷兰国旗由红.白.蓝三色组成. 荷兰国旗问题:现在有若干个红.白.蓝三种 ...

  4. 荷兰国旗 Flag of the Kingdom of the Netherlands

    问题描述:现有n个红白蓝三种不同颜色的小球,乱序排列在一起,请通过两两交换任意两个球,使得从左至右的球依次为红球.白球.蓝球.这个问题之所以叫做荷兰国旗,是因为将红白蓝三色的小球弄成条状物,并有序排列 ...

  5. Algorithm:C+语言实现之数组相关算法(和为定值的两个数、和为定值的m个数、荷兰国旗、长度为2n的洗牌算法、任意长度数组的洗牌算法)

    Algorithm:C+语言实现之数组相关算法(和为定值的两个数.和为定值的m个数.荷兰国旗.长度为2n的洗牌算法.任意长度数组的洗牌算法) 目录 数组 1.寻找和为定值的两个数 2.和为定值的m个数 ...

  6. 算法练习day4——190321(小和、逆序对、划分、荷兰国旗问题)

    归并排序快的原因: 后面的排序利用了前面排序的结果!!! 1.小和问题 在一个数组中, 每一个数左边比当前数小的数累加起来, 叫做这个数组的小和. 求一个数组的小和. 例子:[1,3,4,2,5] 1 ...

  7. leetcode 75. Sort Colors | 75. 颜色分类(荷兰国旗问题,快速排序)

    题目 https://leetcode.com/problems/sort-colors/ 题解 快速排序3.0(随机快排+荷兰国旗技巧优化) 在arr[L-R]范围上,进行快速排序的过程: 1)在这 ...

  8. 【算法习作】荷兰国旗问题

    1.问题描述:     我们将乱序的红白蓝三色小球排列成有序的红白蓝三色的同颜色在一起的小球组.这个问题之所以叫荷兰国旗,是因为我们可以将红白蓝三色小球想象成条状物,有序排列后正好组成荷兰国旗. 2. ...

  9. 荷兰国旗问题(分三块)

    在说 "荷兰国旗" 问题之前,首先来看一个引例. 给定一个数组arr,和一个数num,请把小于等于num的数放在数组的左边,大于num的数放在数组的右边.要求额外空间复杂度O(1) ...

  10. 【算法】荷兰国旗问题

    本文为博主九师兄(QQ:541711153 欢迎来探讨技术)原创文章,未经允许博主不允许转载. 文章目录 1.概述 2.问题一 2.1 暴力方法 2.2 双指针方法 1.2 问题二(荷兰国旗问题) 1 ...

最新文章

  1. 面试官三连问:你这个数据量多大?分库分表怎么做?用的哪个组件?
  2. 如何在国内跑Kubernetes的minikube
  3. 基于visual Studio2013解决面试题之1007鸡蛋和篮子
  4. 编程微刊第五期文章汇总(2018.5)
  5. AngularJS - 自定义指令
  6. Spring详解(一):简介
  7. 【Java】从键盘输入字符串和数字
  8. mysql中00933错误_ORA-00933: SQL command not properly ended
  9. Python 各种读取保存tif,tiff,png,jpg,mat等格式图像方法大集合
  10. c# 修改系统日期格式
  11. C++创建对象new与不new区别
  12. python安装包下载
  13. 数据库设计-简化字典表
  14. javaweb论文参考文献(2020年精选91个)
  15. 从word中无损批量导出图片
  16. 手游服务器账号,手游服务器登录流程
  17. Derivative Filter(导数过滤器)
  18. python爬虫 获取学信网 学校与对应专业信息
  19. 解决黑群晖切换网络环境后无法访问的问题
  20. JAVA组合框怎么添加加减乘除,[C#]组合框设计windows加减乘除简单计算器应用

热门文章

  1. 电脑密码解锁教程详细版图文教程
  2. mybatis的left join多条件操作
  3. 运算符(笔记来自秦疆老师的视频笔记)
  4. Java后端服务器点餐系统的部署+前端微信小程序开发(13)
  5. Angluar WARNING System.import() is deprecated and will be removed soon. Use import() instead
  6. 蓄电池01——充电电流及时间计算
  7. 2022.12.3 英语背诵
  8. Hadoop自动化安装脚本
  9. 开启关闭oracle数据库,手动开启/关闭Oracle数据库
  10. 【Git】Git的使用与学习