atcoder提交CE,咋办?

报错:

./Main.cpp:9:25: error: use of undeclared identifier 'a'
    memset(a, 0, sizeof(a));
                        ^
./Main.cpp:9:12: error: use of undeclared identifier 'a'
    memset(a, 0, sizeof(a));
           ^
2 errors generated.

代码:

#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
int main() {
    int n, m;
    string s;
    int v = 0;
    memset(a, 0, sizeof(a));
    cin >> n >> m >> s;
    int a[m];
    int x[m], y[m];
    for (int i = 0; i < m; i++) {
        cin >> x[i] >> y[i];
    }
    int q = 1;
    for (int i = 0; i < m; i++) {
        for (int j = x[i]; j <= y[i]; j++) {
            while (s[j] == 'A' && s[j + 1] == 'C') {
                a[i]++;
                j++;
            }
            cout << a[i] << endl;
        }
    }
    return 0;
}

memset(a, 0, sizeof(a));这行代码的时候,a数组还没定义呢

#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;
int main() {
    int n, m,a[100001] = {0},x[100001].y[100001];
    string s;
    int v = 0;
    cin >> n >> m >> s;
    for (int i = 0; i < m; i++) {
        cin >> x[i] >> y[i];
    }
    int q = 1;
    for (int i = 0; i < m; i++) {
        for (int j = x[i]; j <= y[i]; j++) {
            while (s[j] == 'A' && s[j + 1] == 'C') {
                a[i]++;
                j++;
            }
            cout << a[i] << endl;
        }
    }
    return 0;
}
 

框中顺序不对啊,应该先在上方定义再用memset置0。

img


希望对题主有所帮助!

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632