/* * 154_sample.cpp * * No.154 市バス * 難易度2.5 */ #include // 判定関数 bool judge(const char* s) { // それぞれの色のカウント int w = 0; int g = 0; int r = 0; // R以外の最後の文字保存用 char rr = '\0'; for (int i=0; s[i]; i++) { if (s[i] == 'R') { r++; } else { // R以外の文字をrrに一時保存しておく rr = s[i]; s[i]=='G' ? g++ : w++; } if (w < g || g < r) { return false; } } // R以外の最後の文字がGでないとおかしい if (rr != 'G' || g != r) { return false; } return true; } int main () { // 標準入力 int n = 0; std::cin >> n; char s[1010]={}; for (int i=0; i> s; // パターンがあり得るものであるかないか std::cout << (judge(s) == true ? "possible" : "impossible") << std::endl; } return 0; }