#include <algorithm>
#include <iostream>
char *RGBorder(char *c_a, int num)
{
auto iter = std::partition(c_a, c_a + num, [](char ch) {return ch == 'R';});
std::partition(iter, c_a + num, [](char ch) {return ch == 'G';});
return c_a;
}
int main()
{
char ca[] = "GBRRBRGGRRBG";
std::cout << RGBorder(ca, strlen(ca));
}
I2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGlvc3RyZWFtPgoKY2hhciAqUkdCb3JkZXIoY2hhciAqY19hLCBpbnQgbnVtKQp7CglhdXRvIGl0ZXIgPSBzdGQ6OnBhcnRpdGlvbihjX2EsIGNfYSArIG51bSwgW10oY2hhciBjaCkge3JldHVybiBjaCA9PSAnUic7fSk7CglzdGQ6OnBhcnRpdGlvbihpdGVyLCBjX2EgKyBudW0sIFtdKGNoYXIgY2gpIHtyZXR1cm4gY2ggPT0gJ0cnO30pOwoJcmV0dXJuIGNfYTsKfQogCmludCBtYWluKCkKewogICAgY2hhciBjYVtdID0gIkdCUlJCUkdHUlJCRyI7CiAgICBzdGQ6OmNvdXQgPDwgUkdCb3JkZXIoY2EsIHN0cmxlbihjYSkpOwp9