結果

問題 No.431 死亡フラグ
コンテスト
ユーザー kitamoto0407
提出日時 2026-01-03 07:47:05
言語 Java
(openjdk 25.0.1)
結果
AC  
実行時間 68 ms / 2,000 ms
コード長 1,209 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 2,536 ms
コンパイル使用メモリ 84,528 KB
実行使用メモリ 46,072 KB
最終ジャッジ日時 2026-01-03 07:47:11
合計ジャッジ時間 4,968 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 16
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

import java.io.*;
import java.util.*;
import java.util.stream.*;

class Process {
    private boolean[] D;
    private boolean   S;
    
    Process(boolean[] D, boolean S) {
        this.D = D;
        this.S = S;
    }

    private boolean isSurvived() {
        if(S) {
            return true;
        }

        return !((D[0] || D[1]) && (D[1] || D[2]) && (D[2] || D[0]));
    }

    String getResult() {
        return (isSurvived() ? "SURVIVED" : "DEAD");
    }
}

public class Main {
    public static void main(String[] args) throws IOException {
        var bufferedReader = new BufferedReader(new InputStreamReader(System.in));
        var printWriter    = new PrintWriter(new BufferedWriter(new OutputStreamWriter(System.out)));

        // 入力
        int[] input = Stream.of(bufferedReader.readLine().trim().split("\\s+")).mapToInt(Integer::parseInt).toArray();
        var D = new boolean[3];
        D[0] = (input[0] == 1);
        D[1] = (input[1] == 1);
        D[2] = (input[2] == 1);

        boolean S = (input[3] == 1);

        // 処理及び出力
        printWriter.println((new Process(D, S)).getResult());

        bufferedReader.close();
        printWriter.close();
    }
}
0