Submission #2201291
Source Code Expand
#define _CRT_SECURE_NO_WARNINGS #include <cstdio> #include <vector> #include <string> #include <iostream> #include <algorithm> #include <map> #include <iterator> #include <functional> #include <set> #include <stack> #include <queue> #include <deque> #include <fstream> #include <iomanip> #include <numeric> #include <cmath> #include <list> #include <sstream> #include <cstring> #include <stdio.h> #include <complex> using namespace std; #pragma GCC optimize("O3") #pragma GCC target("sse4") typedef long double LD; typedef long long LL; typedef unsigned long long ULL; typedef pair<int, int> PII; typedef pair<LD, LD> PDD; typedef pair<LL, LL> PLL; typedef vector<int> VI; typedef vector<LL> VLL; typedef vector<char> VCH; typedef vector<LD> VLD; typedef vector<string> VS; typedef vector<VS> VSS; typedef vector<VI> VVI; typedef vector<VLL> VVLL; typedef vector<VCH> VVCH; typedef vector<PII> VPII; typedef vector<PLL> VPLL; typedef vector<PDD> VPDD; #define MP make_pair #define PB push_back #define X first #define Y second #define next fake_next #define prev fake_prev #define left fake_left #define right fake_right #define FOR(i, a, b) for(LL i = (a); i < (b); ++i) #define RFOR(i, b, a) for(int i = (b) - 1; i >= (a); --i) #define REP(i, t) FOR(i, 0, t) #define ALL(a) a.begin(), a.end() #define SZ(a) (int)((a).size()) #define FILL(a, value) memset(a, value, sizeof(a)) const LD PI = acos(-1.0); const LD EPS = 1e-9; const LL INF = 1e9; const LL LINF = 1e18; const LL mod = 1000000007; const LL MAXN = 1e5 + 47; const LL MAX = 1e5 + 47; LL n, k; string s; deque<int> d; int main() { ios_base::sync_with_stdio(0), cin.tie(0), cout.tie(0); //freopen("In.txt", "r", stdin); cin >> n >> k >> s; FOR(i, 0, n) if (s[i] == 'A') d.push_back(1); else d.push_back(0); int rev = 0; int MAGIC = 100 + 2 * n; if (k < MAGIC) { REP(q, k) { if (d[0] ^ rev) d[0] ^= 1; else { d.pop_front(); d.push_back(rev); rev ^= 1; } } } else { int cnt = k - MAGIC; REP(q, MAGIC) { if (d[0] ^ rev) d[0] ^= 1; else { d.pop_front(); d.push_back(rev); rev ^= 1; } } if (cnt & 1) { if (d[0] ^ rev) d[0] ^= 1; else { d.pop_front(); d.push_back(rev); rev ^= 1; } } } for (auto i : d) if (i ^ rev) cout << "A"; else cout << "B"; cin >> s; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - Half Reflector |
User | vjudge4 |
Language | C++14 (GCC 5.4.1) |
Score | 900 |
Code Size | 2371 Byte |
Status | AC |
Exec Time | 10 ms |
Memory | 1560 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 900 / 900 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample1.txt, sample2.txt, sample3.txt |
All | sample1.txt, sample2.txt, sample3.txt, in1.txt, in10.txt, in11.txt, in12.txt, in13.txt, in14.txt, in15.txt, in16.txt, in17.txt, in18.txt, in19.txt, in2.txt, in20.txt, in21.txt, in22.txt, in23.txt, in24.txt, in25.txt, in26.txt, in27.txt, in28.txt, in29.txt, in3.txt, in30.txt, in31.txt, in32.txt, in33.txt, in34.txt, in35.txt, in36.txt, in37.txt, in38.txt, in39.txt, in4.txt, in40.txt, in41.txt, in42.txt, in5.txt, in543.txt, in557.txt, in6.txt, in7.txt, in8.txt, in9.txt, sample1.txt, sample2.txt, sample3.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
in1.txt | AC | 1 ms | 256 KB |
in10.txt | AC | 8 ms | 1556 KB |
in11.txt | AC | 10 ms | 1556 KB |
in12.txt | AC | 8 ms | 1556 KB |
in13.txt | AC | 8 ms | 1556 KB |
in14.txt | AC | 10 ms | 1556 KB |
in15.txt | AC | 8 ms | 1556 KB |
in16.txt | AC | 8 ms | 1556 KB |
in17.txt | AC | 10 ms | 1556 KB |
in18.txt | AC | 9 ms | 1556 KB |
in19.txt | AC | 8 ms | 1556 KB |
in2.txt | AC | 5 ms | 848 KB |
in20.txt | AC | 10 ms | 1556 KB |
in21.txt | AC | 9 ms | 1556 KB |
in22.txt | AC | 10 ms | 1556 KB |
in23.txt | AC | 10 ms | 1556 KB |
in24.txt | AC | 10 ms | 1556 KB |
in25.txt | AC | 10 ms | 1556 KB |
in26.txt | AC | 10 ms | 1556 KB |
in27.txt | AC | 10 ms | 1556 KB |
in28.txt | AC | 9 ms | 1556 KB |
in29.txt | AC | 10 ms | 1556 KB |
in3.txt | AC | 10 ms | 1556 KB |
in30.txt | AC | 9 ms | 1556 KB |
in31.txt | AC | 9 ms | 1556 KB |
in32.txt | AC | 10 ms | 1556 KB |
in33.txt | AC | 10 ms | 1556 KB |
in34.txt | AC | 10 ms | 1556 KB |
in35.txt | AC | 10 ms | 1556 KB |
in36.txt | AC | 10 ms | 1556 KB |
in37.txt | AC | 10 ms | 1556 KB |
in38.txt | AC | 10 ms | 1556 KB |
in39.txt | AC | 9 ms | 1556 KB |
in4.txt | AC | 10 ms | 1556 KB |
in40.txt | AC | 10 ms | 1556 KB |
in41.txt | AC | 9 ms | 1556 KB |
in42.txt | AC | 9 ms | 1556 KB |
in5.txt | AC | 10 ms | 1560 KB |
in543.txt | AC | 9 ms | 1428 KB |
in557.txt | AC | 9 ms | 1428 KB |
in6.txt | AC | 1 ms | 256 KB |
in7.txt | AC | 10 ms | 1556 KB |
in8.txt | AC | 10 ms | 1556 KB |
in9.txt | AC | 10 ms | 1556 KB |
sample1.txt | AC | 1 ms | 256 KB |
sample2.txt | AC | 1 ms | 256 KB |
sample3.txt | AC | 1 ms | 256 KB |