#include <iostream>
#include <climits>
#include <vector>
using namespace std;
const int N = 2e6;
const int INF = INT_MAX;
vector <pair <int, int> >v;
int main () {
cerr << "Ready\n";
string s;
int n, q;
cin >> n >> q;
cin >> s;
while(q--) {
char type;
cin >> type;
if (type == 'a') {
int x, y;
cin >> x >> y;
#define eb emplace_back
#define mkp make_pair
v.eb(mkp(x, y));
}
else {
int pos;
cin >> pos;
#define sz(s) (int)(s.size())
for (int j = sz(v) - 1; j >= 0; -- j) {
if (v[j].second == pos){
pos = v[j].first;
continue;
}
if (v[j].second < pos)
--pos;
if (v[j].first <= pos)
++pos;
}
--pos;
cout << s[pos] << '\n';
}
}
}
# |
결과 |
실행 시간 |
메모리 |
Grader output |
1 |
Incorrect |
2 ms |
256 KB |
Output isn't correct |
2 |
Halted |
0 ms |
0 KB |
- |