编号 题目 状态 分数 总时间 内存 代码 / 答案文件 提交者 提交时间
#3833 #1011. 小田的存钱罐 Compile Error 0 0 ms 0 K C++ 17 (Clang) / 1.0 K s230026023 2023-11-25 16:59:00
显示原始代码

#include <stdio.h>
int main() {
    int q;
    scanf("%d", &q);
    int S[q][2] = { 0 };
    int x, c;

    int k = 0;
    for (int i = 0; i < q; i++) {
        int o;
        scanf("%d", &o);

        if (o == 1) {
            scanf("%d", &x);
            S[k][0] = x;
            S[k][1]++;
            //	X[k]=x;
            //	cout<<X[k];
            k++;
        }

        else if (o == 2) {
            int m;
            scanf("%d%d", &x, &c);
            for (int t = 0; t < k; t++) {
                if (x == S[t][0]) {
                    m = t;

                    if (c >= S[m][1]) {
                        S[m][1] = 0;
                    } else {
                        S[m][1] = S[m][1] - c;
                    }
                }
            }

            //	cout<<S[x]<<endl;
        }

        else if (o == 3) {
            int min, max;
            int num[k + 1] = { 0 };
            int t = 0;
            //	cout<<k;
            for (int j = 0; j < k; j++) {
                if (S[j][1] != 0) {
                    num[t] = S[j][0];

                    //	cout<<num[t]<<endl;
                    t++;
                }
            }
            min = num[0];
            max = num[0];
            //	cout<<min<<" "<<max<<endl;
            for (int j = 0; j < t; j++) {
                if (min > num[j])
                    min = num[j];
                if (max < num[j])
                    max = num[j];
            }
            printf("%d\n", max - min);
        }
    }
    return 0;
}

编译信息

/sandbox/1/a.cpp:7:8: error: variable-sized object may not be initialized
        int S[q][2]={0};
              ^
/sandbox/1/a.cpp:56:12: error: variable-sized object may not be initialized
                        int num[k+1]={0};
                                ^~~
2 errors generated.