結果

問題 No.559 swapAB列
ユーザー tecchaxntecchaxn
提出日時 2017-08-25 22:43:41
言語 C
(gcc 12.3.0)
結果
TLE  
実行時間 -
コード長 637 bytes
コンパイル時間 169 ms
コンパイル使用メモリ 30,720 KB
実行使用メモリ 8,480 KB
最終ジャッジ日時 2024-04-23 15:38:45
合計ジャッジ時間 3,681 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 1 ms
8,480 KB
testcase_01 AC 1 ms
6,940 KB
testcase_02 AC 1 ms
6,944 KB
testcase_03 AC 1 ms
6,944 KB
testcase_04 AC 1 ms
6,940 KB
testcase_05 AC 1 ms
6,944 KB
testcase_06 AC 1 ms
6,940 KB
testcase_07 AC 1 ms
6,940 KB
testcase_08 TLE -
testcase_09 -- -
権限があれば一括ダウンロードができます

ソースコード

diff #

#include<stdio.h>
#include<string.h>
char s[20];
int l;
int check(){
    int i;
    int lb=0,ub=l-1;
    if(l==1) return 1;
    else if(l==2){
        if(s[0]=='A'||s[1]=='B') return 1;
        else return 0;
    }
    while(s[lb]=='A' && s[lb+1]=='A' && lb+1<l) lb++;
    while(s[ub]=='B' && s[ub-1]=='B' && ub-1>=0) ub--;
    return lb+1==ub;
}
int main(void){
    int i,ans=0;
    scanf("%s",s);
    l=strlen(s);
    while(!check()){
        for(i=0;i<l-1;i++){
            if(s[i]=='B' && s[i+1]=='A'){
                s[i]='A',s[i+1]='B';
                ans++;
            }
        }
    }
    printf("%d\n",ans);
    return 0;
}
0