Submission #1366337


Source Code Expand

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

public class Main {
    private static boolean debug = false;
    private static boolean elapsed = false;

    private static PrintWriter _out = new PrintWriter(System.out);
    private static PrintWriter _err = new PrintWriter(System.err);

    private void solve(Scanner sc) {
        String S = sc.nextLine();

        int[] addCnt = new int[S.length()];
        int[] subCnt = new int[S.length()];

        int add = 0;
        int sub = 0;
        List<Integer> A = new ArrayList<>();
        for (int i = S.length() - 1; i >= 0; --i) {
            char ch = S.charAt(i);
            if (ch == '+') {
                ++add;
            } else if (ch == '-') {
                ++sub;
            }

            addCnt[i] = add;
            subCnt[i] = sub;
            if (ch == 'M') {
                A.add(add - sub);
            }
        }

        Collections.sort(A);
        int former = 0;
        int latter = 0;
        for (int i = 0; i < A.size() / 2; ++i) {
            former += A.get(i);
        }
        for (int i = A.size() / 2; i < A.size(); ++i) {
            latter += A.get(i);
        }
        _out.println(latter - former);
    }
    private static BigInteger C(long n, long r) {
        BigInteger res = BigInteger.ONE;
        for (long i = n; i > n - r; --i) {
            res = res.multiply(BigInteger.valueOf(i));
        }
        for (long i = r; i > 1; --i) {
            res = res.divide(BigInteger.valueOf(i));
        }
        return res;
    }
    private static BigInteger P(long n, long r) {
        BigInteger res = BigInteger.ONE;
        for (long i = n; i > n - r; --i) {
            res = res.multiply(BigInteger.valueOf(i));
        }
        return res;
    }
    /*
     * 10^10 > Integer.MAX_VALUE = 2147483647 > 10^9
     * 10^19 > Long.MAX_VALUE = 9223372036854775807L > 10^18
     */
    public static void main(String[] args) {
        long S = System.currentTimeMillis();

        Scanner sc = new Scanner(System.in);
        new Main().solve(sc);
        _out.flush();

        long G = System.currentTimeMillis();
        if (elapsed) {
            _err.println((G - S) + "ms");
        }
        _err.flush();
    }
}

Submission Info

Submission Time
Task D - ロボット
User hhelibex
Language Java8 (OpenJDK 1.8.0)
Score 100
Code Size 2318 Byte
Status AC
Exec Time 206 ms
Memory 30028 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 30 / 30 70 / 70
Status
AC × 4
AC × 36
AC × 68
Set Name Test Cases
Sample sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt
Subtask1 sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask1_30.txt, subtask1_31.txt, subtask1_32.txt
Subtask2 sample_01.txt, sample_02.txt, sample_03.txt, sample_04.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_26.txt, subtask1_27.txt, subtask1_28.txt, subtask1_29.txt, subtask1_30.txt, subtask1_31.txt, subtask1_32.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt, subtask2_21.txt, subtask2_22.txt, subtask2_23.txt, subtask2_24.txt, subtask2_25.txt, subtask2_26.txt, subtask2_27.txt, subtask2_28.txt, subtask2_29.txt, subtask2_30.txt, subtask2_31.txt, subtask2_32.txt
Case Name Status Exec Time Memory
sample_01.txt AC 90 ms 18260 KB
sample_02.txt AC 90 ms 20560 KB
sample_03.txt AC 90 ms 21588 KB
sample_04.txt AC 90 ms 19024 KB
subtask1_01.txt AC 88 ms 20688 KB
subtask1_02.txt AC 88 ms 19796 KB
subtask1_03.txt AC 93 ms 20180 KB
subtask1_04.txt AC 93 ms 21972 KB
subtask1_05.txt AC 92 ms 20692 KB
subtask1_06.txt AC 94 ms 17620 KB
subtask1_07.txt AC 106 ms 20948 KB
subtask1_08.txt AC 90 ms 16980 KB
subtask1_09.txt AC 93 ms 22228 KB
subtask1_10.txt AC 93 ms 21716 KB
subtask1_11.txt AC 104 ms 19668 KB
subtask1_12.txt AC 93 ms 18900 KB
subtask1_13.txt AC 103 ms 21844 KB
subtask1_14.txt AC 94 ms 21712 KB
subtask1_15.txt AC 106 ms 21972 KB
subtask1_16.txt AC 105 ms 21844 KB
subtask1_17.txt AC 97 ms 20820 KB
subtask1_18.txt AC 95 ms 21972 KB
subtask1_19.txt AC 102 ms 19668 KB
subtask1_20.txt AC 95 ms 17748 KB
subtask1_21.txt AC 104 ms 20692 KB
subtask1_22.txt AC 93 ms 18644 KB
subtask1_23.txt AC 94 ms 20692 KB
subtask1_24.txt AC 103 ms 19668 KB
subtask1_25.txt AC 94 ms 18644 KB
subtask1_26.txt AC 93 ms 21204 KB
subtask1_27.txt AC 103 ms 18772 KB
subtask1_28.txt AC 93 ms 18900 KB
subtask1_29.txt AC 102 ms 18640 KB
subtask1_30.txt AC 92 ms 18644 KB
subtask1_31.txt AC 93 ms 21076 KB
subtask1_32.txt AC 97 ms 21588 KB
subtask2_01.txt AC 178 ms 25292 KB
subtask2_02.txt AC 154 ms 23756 KB
subtask2_03.txt AC 145 ms 26300 KB
subtask2_04.txt AC 173 ms 28228 KB
subtask2_05.txt AC 177 ms 25924 KB
subtask2_06.txt AC 145 ms 24124 KB
subtask2_07.txt AC 148 ms 24388 KB
subtask2_08.txt AC 172 ms 25548 KB
subtask2_09.txt AC 158 ms 26180 KB
subtask2_10.txt AC 183 ms 25776 KB
subtask2_11.txt AC 175 ms 26428 KB
subtask2_12.txt AC 181 ms 26572 KB
subtask2_13.txt AC 178 ms 25932 KB
subtask2_14.txt AC 184 ms 25672 KB
subtask2_15.txt AC 179 ms 27972 KB
subtask2_16.txt AC 197 ms 25148 KB
subtask2_17.txt AC 187 ms 25908 KB
subtask2_18.txt AC 190 ms 28612 KB
subtask2_19.txt AC 188 ms 28108 KB
subtask2_20.txt AC 198 ms 26000 KB
subtask2_21.txt AC 206 ms 28732 KB
subtask2_22.txt AC 188 ms 28232 KB
subtask2_23.txt AC 184 ms 25420 KB
subtask2_24.txt AC 190 ms 26316 KB
subtask2_25.txt AC 184 ms 30028 KB
subtask2_26.txt AC 193 ms 26696 KB
subtask2_27.txt AC 192 ms 26316 KB
subtask2_28.txt AC 192 ms 26180 KB
subtask2_29.txt AC 189 ms 26052 KB
subtask2_30.txt AC 192 ms 26172 KB
subtask2_31.txt AC 188 ms 25796 KB
subtask2_32.txt AC 191 ms 28364 KB