编号 题目 状态 分数 总时间 内存 代码 / 答案文件 提交者 提交时间
#3736 #1011. 小田的存钱罐 Compile Error 0 0 ms 0 K C / 833 B t330026229 2023-11-25 16:40:56
显示原始代码
#include <stdio.h>

int main() {
    int q;
    scanf("%d", &q);
    int a[10000000000];
    long max = 0;
    long min = 10000000000;
    for (int i = 1; i <= q; i++) {
        int m;
        scanf("%d", &m);
        if (m == 1) {
            long x;
            scanf("%ld", &x);
            a[x]++;
            if (min > x) {
                min = x;
            }
            if (max < x) {
                max = x;
            }
        } else if (m == 2) {
            long x;
            int c;
            scanf("%ld%d", &x, &c);
            if (a[x] > c) {
                a[x] -= c;
            } else {
                a[x] = 0;
            }
            if (min == x && a[x] == 0) {
                for (long j = x;; j++) {
                    if (a[j] != 0) {
                        min = j;
                        break;
                    }
                }
            }
            if (max == x && a[x] == 0) {
                for (long k = x;; k--) {
                    if (a[k] != 0) {
                        max = k;
                        break;
                    }
                }
            }
        } else {
            printf("%ld\n", max - min);
        }
    }
    return 0;
}

编译信息

/sandbox/1/a.c:7:8: error: array is too large (10000000000 elements)
        int a[10000000000];
              ^~~~~~~~~~~
/sandbox/1/a.c:9:11: warning: implicit conversion from 'long long' to 'long' changes value from 10000000000 to 1410065408 [-Wconstant-conversion]
        long min=10000000000;
             ~~~ ^~~~~~~~~~~
1 warning and 1 error generated.