結果
問題 |
No.2021 Not A but B
|
ユーザー |
![]() |
提出日時 | 2022-07-29 21:54:44 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,522 bytes |
コンパイル時間 | 3,781 ms |
コンパイル使用メモリ | 228,756 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-07-19 14:28:37 |
合計ジャッジ時間 | 4,886 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 7 WA * 19 |
ソースコード
#include <bits/stdc++.h> #include <iostream> #include <vector> #include <algorithm> #include <stack> #include <atcoder/all> using namespace std; #define reps(i, a, n) for (int i = (a); i < (int)(n); ++i) #define rep(i, n) reps(i, 0, n) #define ALL(x) x.begin(),x.end() #define SIZE(x) ll(x.size()) #define INF32 2147483647 //2.147483647×10^{9}:32bit整数のinf #define INF64 9223372036854775807 //9.223372036854775807×10^{18}:64bit整数のinf #define MOD 1000000007 //問題による #define ll long long #define F first #define S second #define coutALL(x) for(auto i=x.begin();i!=--x.end();i++)cout<<*i<<" ";cout<<*--x.end()<<endl; #define coutALL2d(vv) for(const auto& v : vv){for(const auto& e : v){cout << e << " ";}cout << endl;} #define vi vector<int> #define vvi vector<vector<int> > #define vll vector<long long> #define vvll vector<vector<long long> > int main(){ int n; cin >> n; string s; cin >> s; int cnta = 0; int cntb = 0; int res = 0; reps(i,1,n){ if(s[i-1] == 'B' && s[i] == 'A' && cnta == 1){ res += (cntb + 1); cnta = 1; cntb = 0; } else if(s[i-1] == 'B' && s[i] == 'A' && cnta == 0){ cnta = 1; } else if(s[i-1] == 'B'&& s[i] == 'B'){ cntb++; } else if(s[i-1] == 'A' && s[i] == 'A'){ cnta = 0; cntb = 0; } //cout << cnta << " " << cntb << " " <<res <<endl; } cout << n-1-res << endl; }