結果

問題 No.154 市バス
ユーザー mizzsigmizzsig
提出日時 2018-02-04 15:29:54
言語 PHP
(8.2.11)
結果
AC  
実行時間 52 ms / 2,000 ms
コード長 1,004 bytes
コンパイル時間 114 ms
コンパイル使用メモリ 12,104 KB
実行使用メモリ 12,324 KB
最終ジャッジ日時 2023-08-03 12:38:14
合計ジャッジ時間 1,118 ms
ジャッジサーバーID
(参考情報)
judge12 / judge11
このコードへのチャレンジ(β)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 52 ms
12,236 KB
testcase_01 AC 52 ms
12,324 KB
testcase_02 AC 50 ms
12,276 KB
testcase_03 AC 40 ms
12,216 KB
testcase_04 AC 47 ms
12,276 KB
testcase_05 AC 7 ms
12,292 KB
testcase_06 AC 7 ms
12,236 KB
testcase_07 AC 45 ms
12,216 KB
testcase_08 AC 7 ms
12,308 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
No syntax errors detected in Main.php

ソースコード

diff #

<?php
  $n = trim(fgets(STDIN));

  for ($i = 0; $i < $n; $i++) {
    $str = trim(fgets(STDIN));

    $length = strlen($str);

    $isPossible = true;
    $noMustW = 0;
    $w = 0;
    $g = 0;
    // 各バスの状態を保存する
    $bus = [];

    // それぞれのテストケースを確認
    for ($l = 0; $l < $length; $l++) {
      switch ($str[$l]) {
        case 'W':
          if ($w == 0) { $w++; }
          else { $noMustW++; }
          break;
        case 'G':
          if ($w > 0) {
              $w--;
              $g++;
          } else if ($noMustW > 0) {
              $noMustW--;
              $g++;
          } else $isPossible = false;
          break;
        case 'R':
          if ($g > 0) {
              $g--;
          } else $isPossible = false;
          break;
      }
      if (!$isPossible) break;
    }

    // 結果出力
    if ($isPossible && ($w == 0) && ($g == 0)) {
        echo 'possible' . "\n";
    } else {
        echo 'impossible' . "\n";
    }
  }
0