AtCoder Grand Contest 015

Submission #1591335

Source codeソースコード

import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.util.NoSuchElementException;

public class Main {

    String s;

    public void solve() {
        s = next();

        long ans = 0;

        for(int i = 0;i < s.length();i++){
            if (s.charAt(i) == 'U') {
                ans += i * 2;
                ans += s.length() - i - 1;
            } else {
                ans += i;
                ans += (s.length() - i - 1) * 2;
            }
        }

        out.println(ans);
    }

    public static void main(String[] args) {
        out.flush();
        new Main().solve();
        out.close();
    }

    /* Input */
    private static final InputStream in = System.in;
    private static final PrintWriter out = new PrintWriter(System.out);
    private final byte[] buffer = new byte[2048];
    private int p = 0;
    private int buflen = 0;

    private boolean hasNextByte() {
        if (p < buflen)
            return true;
        p = 0;
        try {
            buflen = in.read(buffer);
        } catch (IOException e) {
            e.printStackTrace();
        }
        if (buflen <= 0)
            return false;
        return true;
    }

    public boolean hasNext() {
        while (hasNextByte() && !isPrint(buffer[p])) {
            p++;
        }
        return hasNextByte();
    }

    private boolean isPrint(int ch) {
        if (ch >= '!' && ch <= '~')
            return true;
        return false;
    }

    private int nextByte() {
        if (!hasNextByte())
            return -1;
        return buffer[p++];
    }

    public String next() {
        if (!hasNext())
            throw new NoSuchElementException();
        StringBuilder sb = new StringBuilder();
        int b = -1;
        while (isPrint((b = nextByte()))) {
            sb.appendCodePoint(b);
        }
        return sb.toString();
    }

    public int nextInt() {
        return Integer.parseInt(next());
    }

    public long nextLong() {
        return Long.parseLong(next());
    }

    public double nextDouble() {
        return Double.parseDouble(next());
    }
}

Submission

Task問題 B - Evilator
User nameユーザ名 tookunn
Created time投稿日時
Language言語 Java8 (OpenJDK 1.8.0)
Status状態 AC
Score得点 400
Source lengthソースコード長 2227 Byte
File nameファイル名
Exec time実行時間 95 ms
Memory usageメモリ使用量 21588 KB

Test case

Set

Set name Score得点 / Max score Cases
Sample - s1.txt,s2.txt
All 400 / 400 01.txt,02.txt,03.txt,04.txt,05.txt,06.txt,07.txt,08.txt,09.txt,10.txt,s1.txt,s2.txt

Test case

Case name Status状態 Exec time実行時間 Memory usageメモリ使用量
01.txt AC 93 ms 16980 KB
02.txt AC 95 ms 21588 KB
03.txt AC 89 ms 19156 KB
04.txt AC 89 ms 19412 KB
05.txt AC 90 ms 18900 KB
06.txt AC 87 ms 18260 KB
07.txt AC 90 ms 19412 KB
08.txt AC 91 ms 18900 KB
09.txt AC 68 ms 21204 KB
10.txt AC 66 ms 18260 KB
s1.txt AC 79 ms 18900 KB
s2.txt AC 68 ms 19156 KB