Submission #1778824


Source Code Expand

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

public class Main {
    private static IO io = new IO();
    
    public static void main(String[] args) {
        int n = io.nextInt();
        boolean ng[] = new boolean[301];
        for (int i=0; i<3; i++) ng[io.nextInt()] = true;
        if (ng[n]) {
            System.out.println("NO");
            return;
        }

        int s = 0;
        root: while (n>0) {
            for (int i = 3; i > 0; i--) {
                if (n-i>=0 && !ng[n-i]) {
                    n -= i;
                    s++;
                    continue root;
                }
            }
            System.out.println("NO");
            return;
        }

        if (s>100) System.out.println("NO");
        else System.out.println("YES");
    }

    static class IO extends PrintWriter {
        private final InputStream in;
        private final byte[] buffer = new byte[1024];
        private int ptr = 0;
        private int buflen = 0;

        IO() {
            this(System.in);
        }

        IO(InputStream source) {
            super(System.out);
            this.in = source;
        }

        boolean hasNextByte() {
            if (ptr < buflen) return true;
            else {
                ptr = 0;
                try {
                    buflen = in.read(buffer);
                } catch (IOException e) {
                    e.printStackTrace();
                }
                if (buflen <= 0) return false;
            }
            return true;
        }
        int readByte() {
            if (hasNextByte()) return buffer[ptr++];
            else return -1;
        }
        boolean isPrintableChar(int c) {return 33<=c &&c <=126;}
        void skipUnprintable() {while(hasNextByte() && !isPrintableChar(buffer[ptr]))ptr++;}
        boolean hasNext() {
            skipUnprintable();
            return hasNextByte();
        }

        long nextLong() {
            if (!hasNext()) throw new NoSuchElementException();
            long n = 0;
            boolean minus = false;
            int b = readByte();
            if (b == '-') {
                minus = true;
                b = readByte();
            }
            if (b < '0' || '9' < b) throw new NumberFormatException();
            while (true) {
                if ('0' <= b && b <= '9') {
                    n *= 10;
                    n += b - '0';
                } else if (b == -1 || !isPrintableChar(b)) return minus ? -n : n;
                else throw new NumberFormatException();
                b = readByte();
            }
        }

        int nextInt() {
            long nl = nextLong();
            if (nl < Integer.MIN_VALUE || nl > Integer.MAX_VALUE) throw new NumberFormatException();
            return (int) nl;
        }

        public void close() {
            super.close();
            try {
                in.close();
            } catch (IOException ignored) {
            }
        }
    }
}

Submission Info

Submission Time
Task C - 123引き算
User creep04
Language Java8 (OpenJDK 1.8.0)
Score 100
Code Size 3063 Byte
Status AC
Exec Time 92 ms
Memory 23124 KB

Judge Result

Set Name All
Score / Max Score 100 / 100
Status
AC × 31
Set Name Test Cases
All sample_01.txt, sample_02.txt, sample_03.txt, test_143_142_141_140.txt, test_1_1_2_3.txt, test_1_2_3_4.txt, test_200_200_2_3.txt, test_231_77_78_80.txt, test_235_124_126_125.txt, test_253_45_47_48.txt, test_297_223_224_225.txt, test_297_294_292_290.txt, test_297_297_30_83.txt, test_297_3_43_72.txt, test_298_125_123_124.txt, test_298_293_295_291.txt, test_298_298_4_8.txt, test_298_36_72_98.txt, test_298_55_3_43.txt, test_298_92_91_295.txt, test_299_200_151_65.txt, test_299_240_35_154.txt, test_299_300_299_298.txt, test_299_33_242_151.txt, test_299_56_57_58.txt, test_299_66_132_198.txt, test_300_271_44_68.txt, test_300_299_298_296.txt, test_300_30_99_183.txt, test_300_4_5_6.txt, test_84_34_64_36.txt
Case Name Status Exec Time Memory
sample_01.txt AC 68 ms 21076 KB
sample_02.txt AC 67 ms 18004 KB
sample_03.txt AC 68 ms 21076 KB
test_143_142_141_140.txt AC 92 ms 19156 KB
test_1_1_2_3.txt AC 68 ms 18004 KB
test_1_2_3_4.txt AC 66 ms 19284 KB
test_200_200_2_3.txt AC 68 ms 21204 KB
test_231_77_78_80.txt AC 68 ms 21204 KB
test_235_124_126_125.txt AC 68 ms 20052 KB
test_253_45_47_48.txt AC 68 ms 20564 KB
test_297_223_224_225.txt AC 69 ms 21076 KB
test_297_294_292_290.txt AC 67 ms 19284 KB
test_297_297_30_83.txt AC 67 ms 19284 KB
test_297_3_43_72.txt AC 67 ms 18260 KB
test_298_125_123_124.txt AC 69 ms 20948 KB
test_298_293_295_291.txt AC 69 ms 21204 KB
test_298_298_4_8.txt AC 67 ms 19540 KB
test_298_36_72_98.txt AC 68 ms 19156 KB
test_298_55_3_43.txt AC 67 ms 21204 KB
test_298_92_91_295.txt AC 70 ms 23124 KB
test_299_200_151_65.txt AC 69 ms 21076 KB
test_299_240_35_154.txt AC 70 ms 20564 KB
test_299_300_299_298.txt AC 68 ms 21076 KB
test_299_33_242_151.txt AC 70 ms 18900 KB
test_299_56_57_58.txt AC 68 ms 18132 KB
test_299_66_132_198.txt AC 68 ms 19156 KB
test_300_271_44_68.txt AC 67 ms 21332 KB
test_300_299_298_296.txt AC 68 ms 21204 KB
test_300_30_99_183.txt AC 69 ms 20948 KB
test_300_4_5_6.txt AC 69 ms 21204 KB
test_84_34_64_36.txt AC 69 ms 19412 KB