c084. 2. 字串操作
Tags :
Accepted rate : 2人/2人 ( 100% ) [非即時]
評分方式:
Tolerant

最近更新 : 2025-03-09 22:58

Content

給一個字串 $S$,有三種字串操作,分別如下

0. 兩兩交換:將字串內相鄰兩個字元交換,例如字串 "apcsntnu" 先分組成 (ap)(cs)(nt)(nu),將會交換為 (pa)(sc)(tn)(un),即得到 "pasctnun"
1. 兩兩排序:將字串內相鄰兩個字元按照字典序排序,字元的字典序為 a < b < ... < z,例如字串 "family" 先分組成 (fa)(mi)(ly),將會交換成 (af)(im)(ly),即得到 "afimly"
2. 完美重排:假設字串長度為 $n$,將字串內的字元編號為 $0, 1, 2, ..., n-1$,將字串分成兩半為 $0, 1, \cdots, \frac{n}{2}-1$ 和 $\frac{n}{2}, \frac{n}{2} + 1, \cdots, n-1$,並且組合成 $0, \frac{n}{2}, 1, \frac{n}{2} + 1, \cdots, \frac{n}{2}-1, n-1$。例如 "apcsntnu" 拆成 "apcs""ntnu",然後交錯成 "anptcnsu"

給定 $k$ 個操作,請依序操作字串,輸出最後的字串結果。

Input

第一行輸入一個字串 $S (2 \le |S| \le 100)$,字串長度保證為偶數。接下來一行輸入一個正整數 $k$,接下來有 $k$ 行,每一行有一個數字,種類為 $0, 1, 2$。

(60 分): $|S| \le 10$, $k = 1$ 且保證操作為完美重排 
(40 分): 無限制

Output

輸出操作完之後的字串內容。

Sample Input #1
apcsntnu
1
2
Sample Output #1
anptcnsu
Sample Input #2
facebook
4
2
0
2
1
Sample Output #2
bocfkoae
測資資訊:
記憶體限制: 256 MB
公開 測資點#0 (5%): 1.0s , <1K
公開 測資點#1 (5%): 1.0s , <1K
公開 測資點#2 (5%): 1.0s , <1K
公開 測資點#3 (5%): 1.0s , <1K
公開 測資點#4 (5%): 1.0s , <1K
公開 測資點#5 (5%): 1.0s , <1K
公開 測資點#6 (5%): 1.0s , <1K
公開 測資點#7 (5%): 1.0s , <1K
公開 測資點#8 (5%): 1.0s , <1K
公開 測資點#9 (5%): 1.0s , <1K
公開 測資點#10 (5%): 1.0s , <1K
公開 測資點#11 (5%): 1.0s , <1K
公開 測資點#12 (5%): 1.0s , <1K
公開 測資點#13 (5%): 1.0s , <1K
公開 測資點#14 (5%): 1.0s , <1K
公開 測資點#15 (5%): 1.0s , <1K
公開 測資點#16 (5%): 1.0s , <1K
公開 測資點#17 (5%): 1.0s , <1K
公開 測資點#18 (5%): 1.0s , <1K
公開 測資點#19 (5%): 1.0s , <1K
Hint :

範例測資1如題序所述

範例測資2:
操作2: "facebook" 變為 "fbaocoek"。
操作0: "fbaocoek" 分組為 (fb)(ao)(co)(ek) 變為 (bf)(oa)(oc)(ke),字串為 "bfoaocke"。
操作2: "bfoaocke" 變為 "bofcokae"。
操作1: "bofcokae" 分組為 (bo)(fc)(ok)(ae) 變為 (bo)(cf)(ko)(ae),字串為 "bocfkoae"。

特別感謝 Jacky 補充完美重排例子!

Tags:
出處:
2025年1月APCS [管理者: ktlai (K.我已霸榜.Tlai) ]


ID User Problem Subject Hit Post Date
沒有發現任何「解題報告」