Submission #1416716


Source Code Expand

#include <iostream>
#include <vector>
#include <algorithm>


constexpr int N = 1 << 18;
long long dat[N];

void add(int k, long long v) {
    for (; k < N; k += k & -k) {
        dat[k] += v;
    }
}

long long sum(int k) {
    long long ret = 0;
    for (; k > 0; k &= k - 1) {
        ret += dat[k];
    }
    return ret;
}

int lower_bound(long long v) {
    int k = 0;
    for (int i = N / 2; i >= 1; i /= 2) {
        if (dat[k + i] < v) {
            v -= dat[k + i];
            k += i;
        }
    }
    return k + 1;
}

int main() {
    int n, m, H;
    std::cin >> n >> m >> H;

    int ptr = 1;
    for (int i = 1; i <= n; i++) {
        int a;
        scanf("%d", &a);
        add(ptr++, a);
    }

    while (m--) {
        char buf[64];
        long long a;
        scanf("%s %lld", buf, &a);

        if (buf[0] == 'c') {
            int k = lower_bound(a + H);
            if (k == N) {
                k = lower_bound(a - H + 1);
                if (k == N) {
                    puts("miss");
                } else {
                    puts("go");
                    add(k, -(sum(k) - sum(k - 1)));
                }
            } else if (sum(k - 1) <= a - H) {
                puts("go");
                add(k, -(sum(k) - sum(k - 1)));
            } else {
                puts("stop");
            }
        } else {
            add(ptr++, a);
        }
    }
}

Submission Info

Submission Time
Task G - だるま落とし
User pekempey
Language C++14 (GCC 5.4.1)
Score 0
Code Size 1459 Byte
Status WA
Exec Time 47 ms
Memory 1792 KB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:41:24: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d", &a);
                        ^
./Main.cpp:48:34: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
         scanf("%s %lld", buf, &a);
                                  ^

Judge Result

Set Name small large
Score / Max Score 0 / 20 0 / 80
Status
AC × 35
WA × 1
AC × 65
WA × 1
Set Name Test Cases
small small/case_000.txt, small/case_002.txt, small/case_003.txt, small/case_005.txt, small/case_006.txt, small/case_007.txt, small/case_008.txt, small/case_009.txt, small/case_010.txt, small/case_011.txt, small/case_012.txt, small/case_013.txt, small/case_014.txt, small/case_015.txt, small/case_016.txt, small/case_017.txt, small/case_018.txt, small/case_019.txt, small/case_020.txt, small/case_021.txt, small/case_022.txt, small/case_023.txt, small/case_024.txt, small/case_025.txt, small/case_026.txt, small/case_027.txt, small/case_028.txt, small/case_029.txt, small/case_030.txt, small/case_031.txt, small/case_032.txt, small/case_033.txt, small/case_034.txt, small/case_035.txt, small/case_036.txt, small/case_037.txt
large large/case_000.txt, large/case_002.txt, large/case_003.txt, large/case_005.txt, large/case_006.txt, large/case_007.txt, large/case_008.txt, large/case_009.txt, large/case_010.txt, large/case_011.txt, large/case_012.txt, large/case_013.txt, large/case_014.txt, large/case_015.txt, large/case_016.txt, large/case_017.txt, large/case_018.txt, large/case_019.txt, large/case_020.txt, large/case_021.txt, large/case_022.txt, large/case_023.txt, large/case_024.txt, large/case_025.txt, large/case_026.txt, large/case_027.txt, large/case_028.txt, large/case_029.txt, large/case_030.txt, large/case_031.txt, large/case_032.txt, large/case_033.txt, large/case_034.txt, large/case_035.txt, large/case_036.txt, large/case_037.txt, large/large_case_000.txt, large/large_case_001.txt, large/large_case_002.txt, large/large_case_003.txt, large/large_case_004.txt, large/large_case_005.txt, large/large_case_006.txt, large/large_case_007.txt, large/large_case_008.txt, large/large_case_009.txt, large/large_case_010.txt, large/large_case_011.txt, large/large_case_012.txt, large/large_case_013.txt, large/large_case_014.txt, large/large_case_015.txt, large/large_case_016.txt, large/large_case_017.txt, large/large_case_018.txt, large/large_case_019.txt, large/large_case_020.txt, large/large_case_021.txt, large/large_case_022.txt, large/large_case_023.txt, large/large_case_024.txt, large/large_case_025.txt, large/large_case_026.txt, large/large_case_027.txt, large/large_case_028.txt, large/large_case_029.txt
Case Name Status Exec Time Memory
large/case_000.txt AC 1 ms 256 KB
large/case_002.txt WA 1 ms 256 KB
large/case_003.txt AC 1 ms 256 KB
large/case_005.txt AC 1 ms 256 KB
large/case_006.txt AC 1 ms 256 KB
large/case_007.txt AC 1 ms 256 KB
large/case_008.txt AC 2 ms 256 KB
large/case_009.txt AC 2 ms 256 KB
large/case_010.txt AC 2 ms 256 KB
large/case_011.txt AC 2 ms 256 KB
large/case_012.txt AC 2 ms 256 KB
large/case_013.txt AC 2 ms 256 KB
large/case_014.txt AC 2 ms 256 KB
large/case_015.txt AC 2 ms 256 KB
large/case_016.txt AC 2 ms 256 KB
large/case_017.txt AC 2 ms 256 KB
large/case_018.txt AC 1 ms 256 KB
large/case_019.txt AC 2 ms 256 KB
large/case_020.txt AC 2 ms 256 KB
large/case_021.txt AC 2 ms 256 KB
large/case_022.txt AC 2 ms 256 KB
large/case_023.txt AC 2 ms 256 KB
large/case_024.txt AC 2 ms 256 KB
large/case_025.txt AC 2 ms 256 KB
large/case_026.txt AC 2 ms 256 KB
large/case_027.txt AC 2 ms 256 KB
large/case_028.txt AC 2 ms 256 KB
large/case_029.txt AC 2 ms 256 KB
large/case_030.txt AC 2 ms 256 KB
large/case_031.txt AC 2 ms 256 KB
large/case_032.txt AC 2 ms 256 KB
large/case_033.txt AC 2 ms 256 KB
large/case_034.txt AC 2 ms 256 KB
large/case_035.txt AC 2 ms 256 KB
large/case_036.txt AC 2 ms 256 KB
large/case_037.txt AC 2 ms 256 KB
large/large_case_000.txt AC 44 ms 1664 KB
large/large_case_001.txt AC 45 ms 1536 KB
large/large_case_002.txt AC 44 ms 1664 KB
large/large_case_003.txt AC 44 ms 1664 KB
large/large_case_004.txt AC 47 ms 1536 KB
large/large_case_005.txt AC 44 ms 1536 KB
large/large_case_006.txt AC 44 ms 1536 KB
large/large_case_007.txt AC 44 ms 1664 KB
large/large_case_008.txt AC 44 ms 1536 KB
large/large_case_009.txt AC 44 ms 1664 KB
large/large_case_010.txt AC 31 ms 1792 KB
large/large_case_011.txt AC 37 ms 1536 KB
large/large_case_012.txt AC 42 ms 1664 KB
large/large_case_013.txt AC 43 ms 1664 KB
large/large_case_014.txt AC 40 ms 1664 KB
large/large_case_015.txt AC 39 ms 1536 KB
large/large_case_016.txt AC 39 ms 1536 KB
large/large_case_017.txt AC 39 ms 1536 KB
large/large_case_018.txt AC 39 ms 1536 KB
large/large_case_019.txt AC 39 ms 1536 KB
large/large_case_020.txt AC 39 ms 1536 KB
large/large_case_021.txt AC 39 ms 1536 KB
large/large_case_022.txt AC 39 ms 1536 KB
large/large_case_023.txt AC 39 ms 1536 KB
large/large_case_024.txt AC 39 ms 1536 KB
large/large_case_025.txt AC 40 ms 1536 KB
large/large_case_026.txt AC 39 ms 1536 KB
large/large_case_027.txt AC 39 ms 1536 KB
large/large_case_028.txt AC 39 ms 1536 KB
large/large_case_029.txt AC 39 ms 1536 KB
small/case_000.txt AC 1 ms 256 KB
small/case_002.txt WA 1 ms 256 KB
small/case_003.txt AC 1 ms 256 KB
small/case_005.txt AC 1 ms 256 KB
small/case_006.txt AC 1 ms 256 KB
small/case_007.txt AC 1 ms 256 KB
small/case_008.txt AC 2 ms 256 KB
small/case_009.txt AC 2 ms 256 KB
small/case_010.txt AC 2 ms 256 KB
small/case_011.txt AC 2 ms 256 KB
small/case_012.txt AC 2 ms 256 KB
small/case_013.txt AC 2 ms 256 KB
small/case_014.txt AC 2 ms 256 KB
small/case_015.txt AC 2 ms 256 KB
small/case_016.txt AC 2 ms 256 KB
small/case_017.txt AC 2 ms 256 KB
small/case_018.txt AC 1 ms 256 KB
small/case_019.txt AC 2 ms 256 KB
small/case_020.txt AC 2 ms 256 KB
small/case_021.txt AC 2 ms 256 KB
small/case_022.txt AC 2 ms 256 KB
small/case_023.txt AC 2 ms 256 KB
small/case_024.txt AC 2 ms 256 KB
small/case_025.txt AC 2 ms 256 KB
small/case_026.txt AC 2 ms 256 KB
small/case_027.txt AC 2 ms 256 KB
small/case_028.txt AC 2 ms 256 KB
small/case_029.txt AC 2 ms 256 KB
small/case_030.txt AC 2 ms 256 KB
small/case_031.txt AC 2 ms 256 KB
small/case_032.txt AC 2 ms 256 KB
small/case_033.txt AC 2 ms 256 KB
small/case_034.txt AC 2 ms 256 KB
small/case_035.txt AC 2 ms 256 KB
small/case_036.txt AC 2 ms 256 KB
small/case_037.txt AC 2 ms 256 KB