ĐẢO XÂU

(ts10ls2425c4.*)

Lam là một học sinh giỏi môn Tin học, các bạn trong lớp hay nhờ Lam giải các bài toán khó. Hôm nay các bạn có nhờ Lam một bài toán về xâu như sau: Cho xâu S chỉ gồm các kí tự chữ cái in thường, các kí tự trong xâu S được đánh số thứ tự từ 1 đến |S| (trong đó |S| là độ dài của xâu S) và thực hiện m lần thay đổi. Với mỗi lần thay đổi, chọn một số nguyên dương k và đảo ngược một đoạn của xâu S từ vị trí k trở về vị trí |S| - k + 1 (luôn đảm bảo k > \(\frac{|S|}{2}\)).

Yêu cầu: Viết chương trình tìm xâu S sau m lần thay đổi.

Dữ liệu vào:

+ Dòng thứ nhất là xâu S (2 \(\leq\) |S| ≤ 2.105);

+ Dòng thứ hai là số nguyên dương m (1 ≤ m \(\leq\) 105);

+ Dòng thứ ba là m số nguyên dương a1, a2, .., am (\(\frac{|S|}{2}\) \(< \ \)ai \(\leq \ \)|S|; i = 1 .. m).

Kết quả:

+ Ghi 1 dòng duy nhất là kết quả của bài toán.

Ví dụ:

Input Output Giải thích
abcdef
3
5 6 4
fbdcea Với k = 5 thì xâu “abcdef” thay đổi thành “aedcbf”
Với k = 6 thì xâu “aedcbf” lại đổi thành “fbcdea”
Với k = 4 thì xâu “fbcdea” lại đổi thành “fbdcea”

Ràng buộc:

  • Có 50% số điểm tương ứng với số test có |S| \(\leq\) 103 và m \(\leq\) 103;

  • Có 50 % số điểm tương ứng với số test không có ràng buộc gì thêm.

Bạn cần đăng nhập để nộp bài

hpcode.edu.vn
Code tích cực
Trong 24h
  1. trungnam (6/7)
  2. sythai (5/8)
  3. npk1605 (5/10)
Trong 7 ngày
  1. nguyenanhvu (40/64)
  2. khieuquan (35/59)
  3. ngokhang (27/55)
Trong 30 ngày
  1. quechi (85/105)
  2. dangphong3108 (79/125)
  3. kiennhientv (79/179)
Thống kê
AC/Sub: 97887/180710
Pascal: 17121
C++: 130348
Python: 33199
Lượt xem/tải tests: 38905

Lưu Hải Phong - 2020
[email protected]