Điều hướng chính

Nhắn tin NQ Coding

Ngôn ngữ

Phím tắt

/
Chuyển đến ô tìm bài
g p
Đi đến bài tập
g c
Đi đến kỳ thi
g u
Đi đến người dùng
?
Mở trợ giúp phím tắt

Bài tập xoaxauhaiphong2526

Xóa xâu

Dễ Xâu ký tự (string)Heap, Set, Map, ...Cài đặt

  • 100 Điểm
  • 1.0s Thời gian
  • 1G Bộ nhớ
  • 0% Tỉ lệ AC
  • 0 Số AC

Cho xâu kí tự \(S\) có \(n\) kí tự chữ cái Latin viết in hoa \(\texttt{A}\ldots\texttt{Z}\). Có \(q\) lệnh xóa kí tự, mỗi lệnh xóa thuộc một trong \(2\) loại sau đây:

  • Loại \(0\): Xóa \(1\) kí tự đầu tiên (tính từ trái qua phải) có thứ tự từ điển nhỏ nhất của xâu còn lại.

  • Loại \(1\): Xóa \(1\) kí tự đầu tiên (tính từ trái qua phải) có thứ tự từ điển lớn nhất của xâu còn lại.

Yêu cầu: Tìm xâu kí tự còn lại sau khi thực hiện tuần tự \(q\) lệnh xóa.

Input

Dữ liệu vào:có thông tin sau:

  • Dòng đầu tiên có \(2\) số nguyên dương \(n, q\) (\(q \le n \le 2 \times 10^5\); \(q \le 10^5\));

  • Dòng thứ hai là xâu \(S\) chỉ có kí tự chữ cái Latin viết in hoa \(\texttt{A}\ldots\texttt{Z}\);

  • Dòng thứ ba có \(q\) số, mỗi số là \(0\) hoặc số \(1\) tương ứng thể hiện loại lệnh xóa.
    Các số trên cùng một dòng trong dữ liệu được viết cách nhau bởi dấu cách trống.

Ràng buộc:

  • Subtask 1 (\(10\%\) số điểm): Dữ liệu vào có \(q = 1\).

  • Subtask 2 (\(40\%\) số điểm): Dữ liệu vào có \(n \le 10^4\); \(q \le 10^3\).

  • Subtask 3 (\(50\%\) số điểm): Không có ràng buộc nào thêm.

Output

In ra kết quả xâu kí tự còn lại sau khi thực hiện tuần tự \(q\) lệnh xóa.

Example

Input:

10 4
ADBAACDABC
0 1 1 0

Output:

BACABC

Note

Các lần xóa lần lượt là:

  • Lần 1 (loại \(0\)): \(\texttt{ADBAACDABC} \to \texttt{DBAACDABC}\);

  • Lần 2 (loại \(1\)): \(\texttt{DBAACDABC} \to \texttt{BAACDABC}\);

  • Lần 3 (loại \(1\)): \(\texttt{BAACDABC} \to \texttt{BAACABC}\);

  • Lần 4 (loại \(0\)): \(\texttt{BAACABC} \to \texttt{BACABC}\).

Bình luận

Chưa có bình luận nào.