红绿蓝

题目描述:
蒜头君有一个罐子,里面装着红的、绿的、蓝的玻璃珠若干,分别用R、G、B表示。蒜头君希望把它们排成一行,并且按照字典序排列(即B->G->R的顺序).然后以一红二绿三蓝为一组串成一串幸运珠,多余的放回罐子里,那么他能串成多少串幸运珠呢?
输入格式
输入为一行,是一个由若干个R、G、B乱序组成的字符串,长度小于10000,每个字母至少出现一次。
输出格式
·输出共2行;
·第1行是排序完成后的字符串;
·第2行是一个整数,为串成的幸运珠的数目。

image.png

思路:
注意字符串的排序,与数组的排序不同。
代码:

#include 
#include 
#include 
using namespace std;
int main(){
    string s;
    cin>>s;
    int n = s.size();
    int Bcnt = 0;
    int Gcnt = 0;
    int Rcnt = 0;
    sort(s.begin(),s.end());
    cout<

你可能感兴趣的:(红绿蓝)