結果

問題 No.331 CodeRunnerでやれ
ユーザー lunnearlunnear
提出日時 2019-01-21 04:49:34
言語 C++11
(gcc 11.4.0)
結果
TLE  
実行時間 -
コード長 1,442 bytes
コンパイル時間 174 ms
コンパイル使用メモリ 24,448 KB
実行使用メモリ 96,868 KB
平均クエリ数 62.88
最終ジャッジ日時 2024-07-16 16:36:18
合計ジャッジ時間 9,098 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 150 ms
24,848 KB
testcase_01 AC 153 ms
25,232 KB
testcase_02 AC 166 ms
25,232 KB
testcase_03 AC 166 ms
25,616 KB
testcase_04 AC 166 ms
25,220 KB
testcase_05 AC 192 ms
25,220 KB
testcase_06 AC 172 ms
24,592 KB
testcase_07 AC 250 ms
25,220 KB
testcase_08 TLE -
testcase_09 -- -
testcase_10 -- -
testcase_11 -- -
testcase_12 -- -
testcase_13 -- -
testcase_14 -- -
testcase_15 -- -
testcase_16 -- -
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <stdio.h>
#include <stdlib.h>

int main()
{
    enum Mode
    {
        First,
        CheckL,
        Rotate,
    };

    char ins[20];
    int in;
    
    Mode mode = First;

    while(1)
    {
        scanf("%s", ins);
        if(ins[0] == 'M')
            break;
        
        in = atoi(ins);
        
        //  直進でゴール!
        if(in > 20)
        {
            printf("F\n");
            fflush(0);
            continue;
        }
        
        
        
        switch(mode)
        {
        case First:     //  最初は壁に当たるまで直進
        {
            if(in == 0)
            {
                printf("R\n");
                mode = Rotate;
            }
            else
            {
                printf("F\n");
            }
            
            fflush(0);
            break;
        }
        
        case CheckL:    //  左向く
        {
            printf("L\n");
            fflush(0);
            
            mode = Rotate;
            break;
        }
        
        case Rotate:    //  回って進む
        {
            if(in == 0)
            {
                printf("R\n");
                fflush(0);
            }
            else
            {
                printf("F\n");
                fflush(0);
                mode = CheckL;
            }
            
            break;
        }
        
        default:;
        }
    }
    
    return 0;
}
0