本地测试AC,提交之后最后一个点RE,求大神帮助

P2697 宝石串

lyhokia @ 2018-06-22 17:21:47

代码如下,使用了前缀和的做法

#include <cstdio>
#include <cstring>
#define max(a, b)(a) > (b) ? (a) : (b)
int first[1000005];
char str[1000005];
int main(){
    memset(first, 63, sizeof(first));
    gets(str);
    //printf("hello\n");
    int len = strlen(str);
    int cur = 0;
    int ans = 0;
    first[0] = -1;
    for(int i = 0; i < len; ++i){
        cur += (str[i] == 'G') ? 1 : -1;
        //printf("%d\n", cur);
        if(first[cur] > 1000005)first[cur] = i;
        else ans = max(ans, i - first[cur]);
    }
    printf("%d\n", ans);
    return 0;
}

by lyhokia @ 2018-06-27 16:25:59

求一下最后一个数据点。。


|