荷兰国旗问题
2016-12-13 13:38
375 查看
荷兰国旗有三横条块构成,自上到下的三条块颜色依次为红、白、蓝。现有若干由红、白、蓝三种颜色的条块序列,要将它们重新排列使所有相同颜色的条块在一起。本问题要求将所有红色的条块放最左边、所有白色的条块放中间、所有蓝色的条块放最右边。
输入
第1行是一个正整数n(n<100),表示有n组测试数据。接下来有n行,每行有若干个由R,W,B三种字符构成的字符串序列,其中R,W和B分别表示红、白、蓝三种颜色的条块,每行最多有1000个字符。
输出
对输入中每行上由R,W,B三种字符构成的字符串序列,将它们重新排列使所有相同颜色的条块在一起,满足前述要求。
样例输入
3 BBRRWBWRRR RRRWWRWRB RBRW
样例输出
RRRRRWWBBB RRRRRWWWB RRWB
#include<stdio.h> int main(){ int s1,s2,s3,n,i; char c; scanf("%d",&n); getchar(); while(n--){ s1=s2=s3=0; while((c=getchar())!='\n'){ if(c=='R') s1++; if(c=='W') s2++; if(c=='B') s3++; } for(i=0;i<s1;i++) printf("R"); for(i=0;i<s2;i++) printf("W"); a787 for(i=0;i<s3;i++) printf("B"); printf("\n"); } return 0; }
管理员 QQ 1532958223
全宽
相关文章推荐
- C#预处理器指令
- Beta版本冲刺——day5
- 七种常用的PHP程序开发工具
- Android中使用ListView实现分页刷新(线程休眠模拟)(滑动加载列表)
- YII2控制器多单词的访问方式
- SQL之约束
- Qemu-KVM虚拟机初始化及创建过程源码简要分析(二)
- Java开发中经常使用到的几种WebService技术实现方案
- 批量删除注释在eclipse里
- Ubuntu 14.04 配置vsftpd实现FTP服务器 - 通过FTP连接AWS
- 关于webservice遇到的一些问题
- 杨辉三角
- 多线程学习笔记
- jquery获取select选中值以及清除选中状态
- 关于 z-index的问题 和 display动画效果
- VM开启问题
- Access 执行查询时,抛出“标准表达式中数据类型不匹配”的错误
- (转)网上总结的 NIPS 201 参会感受
- HTTPS演变小图
- 2.8 Swift区间运算符