zoukankan      html  css  js  c++  java
  • 荷兰国旗问题

    描述 

    荷兰国旗有三横条块构成,自上到下的三条块颜色依次为红、白、蓝。现有若干由红、白、蓝三种颜色的条块序列,要将它们重新排列使所有相同颜色的条块在一起。本问题要求将所有红色的条块放最左边、所有白色的条块放中间、所有蓝色的条块放最右边。
     
    输入
    第1行是一个正整数n(n<100),表示有n组测试数据。接下来有n行,每行有若干个由R,W,B三种字符构成的字符串序列,其中R,W和B分别表示红、白、蓝三种颜色的条块,每行最多有1000个字符。
    输出
    对输入中每行上由R,W,B三种字符构成的字符串序列,将它们重新排列使所有相同颜色的条块在一起,满足前述要求。
    样例输入
    3
    BBRRWBWRRR
    RRRWWRWRB
    RBRW 
    
    样例输出
    RRRRRWWBBB
    RRRRRWWWB
    RRWB 

     1 import java.util.Arrays;
     2 import java.util.Scanner;
     3 
     4 public class Main {
     5     public static void main(String[] args) {
     6         Scanner scanner=new Scanner(System.in);
     7         int T;
     8         char sChar[];
     9         int i;
    10         int R;
    11         int W;
    12         int B;
    13         
    14         T=scanner.nextInt();
    15         while(true){
    16             if(T==0)
    17                 break;
    18             T--;
    19             
    20             sChar=scanner.next().toCharArray();
    21             
    22             R=0;
    23             W=0;
    24             B=0;
    25             for(i=0;i<sChar.length;i++){
    26                 if(sChar[i]=='R')
    27                     R++;
    28                 else if(sChar[i]=='W')
    29                     W++;
    30                 else
    31                     B++;
    32             }
    33             
    34             for(i=0;i<R;i++)
    35                 System.out.print("R");
    36             
    37             for(i=0;i<W;i++)
    38                 System.out.print("W");
    39             
    40             for(i=0;i<B;i++)
    41                 System.out.print("B");
    42             
    43             System.out.println();
    44         }     
    45     } 
    46 }
     
  • 相关阅读:
    Windows编程系列:Windows中的消息
    python 日志 logging模块
    wx-xcx
    大坑:perspectiveTransform
    在移动硬盘上装系统
    Django
    双边滤波(Bilateral filter)
    Mesh Deformation with Laplacian Coordinates
    C++五十一篇 -- VS2017开发人员新闻无法联网
    idea 修改Git密码和账号后,Git提交账号的没有改变
  • 原文地址:https://www.cnblogs.com/zqxLonely/p/4133067.html
Copyright © 2011-2022 走看看