結果

問題 No.154 市バス
ユーザー HachimoriHachimori
提出日時 2015-02-18 00:38:57
言語 Python2
(2.7.18)
結果
AC  
実行時間 524 ms / 2,000 ms
コード長 884 bytes
コンパイル時間 59 ms
コンパイル使用メモリ 6,912 KB
実行使用メモリ 6,528 KB
最終ジャッジ日時 2024-10-13 06:40:03
合計ジャッジ時間 4,019 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 517 ms
6,528 KB
testcase_01 AC 515 ms
6,528 KB
testcase_02 AC 524 ms
6,272 KB
testcase_03 AC 307 ms
6,400 KB
testcase_04 AC 477 ms
6,400 KB
testcase_05 AC 11 ms
6,272 KB
testcase_06 AC 11 ms
6,272 KB
testcase_07 AC 446 ms
6,272 KB
testcase_08 AC 10 ms
6,272 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

#!/usr/bin/env python
#coding:utf8


def read():
    return raw_input()


def work(s):
    chList = "WGR"

    val = [0, 0, 0]
    for ch in s:
        val[chList.find(ch)] += 1
        if not (val[0] >= val[1] >= val[2]):
            print "impossible"
            return

    wIdx = []
    gIdx = []
    for idx, ch in enumerate(s):
        if ch == 'W':
            wIdx.append(idx)
        elif ch == 'G':
            gIdx.append(idx)

    gIdxCursor = 0
    for idx in wIdx:
        while gIdxCursor < len(gIdx) and idx > gIdx[gIdxCursor]:
            gIdxCursor += 1
        if gIdxCursor == len(gIdx):
            print "impossible"
            return
    
    if val[0] >= val[1] and val[1] == val[2] and val[2] > 0 and s[-1] == 'R':
        print "possible" 
    else:
        print "impossible"


if __name__ == "__main__":
    for i in range(input()):
        work(read())
0