TopCoder

Josh
.

User's AC Ratio

100.0% (7/7)

Submission's AC Ratio

87.5% (7/8)

Tags

Description

現在有一個 N×M 表格,每個格子內有一個小寫英文字母,我們用 (i,j) 代表由上而下第 i 橫列,由左而右第 j 直排的格子。你必須對表格依序執行 Q 次操作,操作主要分成兩種。

第一種操作為「旋轉」操作,每個旋轉操作會伴隨著一個正整數 t,表示要連續的將整個表格順時針旋轉 90t 次。一個 R×C 的表格順時針旋轉 90 度後,會變成一個 C×R 的表格,而原本位於 (i,j) 的格子會跑到 (j,R+1i)。舉例來說,以下左邊 2×3 的表格旋轉 90 度一次會變成右邊 3×2 的表格。

第二種操作為「翻轉」操作,這種操作還會再細分成四種翻轉操作:水平翻轉、垂直翻轉以及主副對角線翻轉。這四種翻轉操作的變化如下:

  • 水平翻轉:一個 R×C 的表格經過一次水平翻轉仍然會是一個 R×C 的表格,但原本在 (i,j) 的格子會跑到 (i,C+1j)
  • 垂直翻轉:一個 R×C 的表格經過一次垂直翻轉仍然會是一個 R×C 的表格,但原本在 (i,j) 的格子會跑到 (R+1i,j)
  • 主對角線翻轉:一個 R×C 的表格經過一次主對角線翻轉後會變成一個 C×R 的表格,而原本在 (i,j) 的格子會跑到 (j,i)
  • 副對角線翻轉:一個 R×C 的表格經過一次副對角線翻轉後會變成一個 C×R 的表格,而原本在 (i,j) 的格子會跑到 (C+1j,R+1i)

舉例來說,以下左邊 2×3 的表格經過水平、垂直、主副對角線翻轉後會分別變成右邊四個表格。

執行完所有操作後,請回答最後表格的長相。

Input Format

第一行輸入三個整數 N,M,Q

接下來輸入 N 行,第 i 行輸入一個長度為 M 的字串 si,其中 si 的第 j 個字元代表一開始 (i,j) 內的小寫英文字母。

接下來再輸入 Q 行,第 i 行包含一個英文字母 opi 和一個整數 ti,其意義如下:

  • 如果 opi=R,則代表第 i 次操作為旋轉操作,且要連續旋轉 90ti 次。
  • 如果 opi=F,則代表第 i 次操作為翻轉操作,而 ti=1,2,3,4 依序代表該次操作為水平翻轉、垂直翻轉、主對角線翻轉以及副對角線翻轉。

範圍限制:

  • 1N,M,Q100
  • 保證所有 si 僅由小寫英文字母組成
  • opi 只可能是 RF
  • 如果 opi=R,則 1ti109
  • 如果 opi=F,則 1ti4

Output Format

第一行輸出兩個正整數 N,M,代表經過所有操作後會得到一個 N×M 的表格。

接下來輸出 N 行,第 i 行輸出一個長度為 M 的字串 si,其中 si 的第 j 個字元代表最後 (i,j) 內的小寫英文字母。

Sample Input 1

3 10 4
baluteshih
littlecube
hsinmutsai
F 3
R 2
F 1
R 103

Sample Output 1

3 10
iastumnish
ebucelttil
hihsetulab

Sample Input 2

3 6 4
wiwiho
howiwi
wihowi
F 4
F 2
R 49
R 1

Sample Output 2

6 3
oii
hww
iio
wwh
ioi
whw

Hints

Problem Source

Subtasks

No. Testdata Range Constraints Score
1 0~1 範例測資 0
2 0~34 無額外限制 100

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 1000 524288 65536 1 2
1 1000 524288 65536 1 2
2 1000 524288 65536 2
3 1000 524288 65536 2
4 1000 524288 65536 2
5 1000 524288 65536 2
6 1000 524288 65536 2
7 1000 524288 65536 2
8 1000 524288 65536 2
9 1000 524288 65536 2
10 1000 524288 65536 2
11 1000 524288 65536 2
12 1000 524288 65536 2
13 1000 524288 65536 2
14 1000 524288 65536 2
15 1000 524288 65536 2
16 1000 524288 65536 2
17 1000 524288 65536 2
18 1000 524288 65536 2
19 1000 524288 65536 2
20 1000 524288 65536 2
21 1000 524288 65536 2
22 1000 524288 65536 2
23 1000 524288 65536 2
24 1000 524288 65536 2
25 1000 524288 65536 2
26 1000 524288 65536 2
27 1000 524288 65536 2
28 1000 524288 65536 2
29 1000 524288 65536 2
30 1000 524288 65536 2
31 1000 524288 65536 2
32 1000 524288 65536 2
33 1000 524288 65536 2
34 1000 524288 65536 2