結果

問題 No.104 国道
ユーザー tsunabittsunabit
提出日時 2018-04-29 23:17:55
言語 Java21
(openjdk 21)
結果
RE  
実行時間 -
コード長 2,427 bytes
コンパイル時間 3,583 ms
コンパイル使用メモリ 77,732 KB
実行使用メモリ 41,516 KB
最終ジャッジ日時 2024-06-27 23:43:10
合計ジャッジ時間 6,804 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 126 ms
41,116 KB
testcase_01 AC 126 ms
41,272 KB
testcase_02 AC 129 ms
41,252 KB
testcase_03 RE -
testcase_04 AC 129 ms
41,108 KB
testcase_05 AC 128 ms
41,144 KB
testcase_06 AC 128 ms
41,392 KB
testcase_07 AC 129 ms
41,296 KB
testcase_08 AC 128 ms
41,344 KB
testcase_09 AC 126 ms
41,412 KB
testcase_10 AC 112 ms
39,828 KB
testcase_11 AC 132 ms
41,516 KB
testcase_12 AC 128 ms
41,340 KB
testcase_13 AC 128 ms
41,260 KB
testcase_14 AC 128 ms
41,020 KB
testcase_15 AC 128 ms
41,432 KB
testcase_16 AC 115 ms
40,184 KB
testcase_17 AC 128 ms
41,416 KB
testcase_18 AC 126 ms
40,908 KB
testcase_19 AC 129 ms
41,276 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import java.util.Scanner;

// ***問題文***
// ユキコダ国には1からはじまる番号のついた国道がある。
// 国道を判別するため同じ番号の国道は2つ以上無い。
// まずユキコダ城から国道1号線がスタートしている。
// 国道は必ずいつか左と右の道に分岐する。
// 国道はより小さな番号の国道から、使えるより小さな番号を使って分岐する。
// 分岐する際に左の国道のほうが右の国道よりかならず番号が小さい。
// 1号線は左の2号線と右の3号線に分岐する。
// 2号線は左の4号線と右の5号線に分岐する。
// 3号線は左の6号線と右の7号線に分岐する。
// 4号線は左の8号線と右の9号線に分岐する。
// 5号線は左の10号線と右の11号線に分岐する。
// このようなルールで国道には番号がついている。
// いまA君はユキコダ城を出て引き返すことなくいくつかの分岐点を通過した。
// A君は順番に左と右のどちらに分岐したかを覚えている。
// A君がいま何号線を歩いているかを答えよ。
// ***入力***
// S
// 分岐の方向をあらわす文字列Sが与えられる。
// Sは文字'L'と'R'からなる0文字以上30文字以下の文字列。
// 'L'は分岐点で左に移動したことをあらわし、'R'は右に移動したことをあらわす。
// 文字列の先頭がA君の最も古い記憶で順に新しくなっていく。
// 最後にかならず改行が入っているので0文字が与えられることはない。
// ***出力***
// A君が国道何号線を歩いているかを1行で答えよ。
// 改行を忘れずに。

public class No104 {
    public static void main(String[] args) {
        // 標準入力から読み込む際に、Scannerオブジェクトを使う。
        Scanner sc = new Scanner(System.in);
        // String s = sc.next();
        String[] s = sc.next().split("" , 0);
        int road = 1;
        for(int i = 0; i < s.length; i++) {
            if("L".equals(s[i])) {
                road = road * 2;
            }else if("R".equals(s[i])) {
                road = road * 2 + 1;
            }else {
                // Nothing
            }
        }
        System.out.println(road);
        // for(String lr : s) {
        //     System.out.println(lr);
        // }
    }
}
0