結果

問題 No.672 最長AB列
コンテスト
ユーザー butsurizuki
提出日時 2018-06-15 12:17:39
言語 C(gnu17)
(gcc 15.2.0)
コンパイル:
gcc-15 -O2 -std=gnu17 -Wno-error=implicit-function-declaration -Wno-error=implicit-int -Wno-error=incompatible-pointer-types -Wno-error=int-conversion -DONLINE_JUDGE -o a.out _filename_ -lm
実行:
./a.out
結果
WA  
実行時間 -
コード長 434 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 163 ms
コンパイル使用メモリ 38,624 KB
最終ジャッジ日時 2026-02-22 01:11:59
ジャッジサーバーID
(参考情報)
judge1 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1 WA * 2
other AC * 2 WA * 14
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.c: In function 'main':
main.c:9:33: warning: iteration 524288 invokes undefined behavior [-Waggressive-loop-optimizations]
    9 |     for(i=0;i<=524288;i++){rw[i]=-1;}
      |                            ~~~~~^~~
main.c:9:14: note: within this loop
    9 |     for(i=0;i<=524288;i++){rw[i]=-1;}
      |             ~^~~~~~~~
main.c:9:33: warning: '__builtin_memset' writing 2097156 bytes into a region of size 2097152 overflows the destination [-Wstringop-overflow=]
    9 |     for(i=0;i<=524288;i++){rw[i]=-1;}
      |                            ~~~~~^~~
main.c:7:16: note: destination object 'rw' of size 2097152
    7 |     int rs=0,i,rw[524288],res=0,l;
      |                ^~

ソースコード

diff #
raw source code

#include<stdio.h>
#include<string.h>

int max(int a,int b){if(a>b){return a;}return b;}

int main(){
    int rs=0,i,rw[524288],res=0,l;
    char s[524288];
    for(i=0;i<=524288;i++){rw[i]=-1;}
    rw[250000]=0;
    scanf("%s",s);
    l=strlen(s);
    for(i=1;i<=l;i++){
        if(s[i-1]=='A'){rs++;}else{rs--;}
        if(rw[250000+rs]==-1){rw[250000+rs]=i;}
        else{res=max(res,rw[250000+rs]);}
    }
    printf("%d\n",res);
}
0