TopCoder

餘切
$\huge\text{owoovo is 8}$

User's AC Ratio

100.0% (1/1)

Submission's AC Ratio

100.0% (1/1)

Tags

Description

在遙遠的西方,有個名為「OYKOT NONA」的古王國。

幾千年前,邪惡的「墓墟龍」曾從深淵掀起災厄,半個世界化為焦土。古王國的工匠為了封印邪惡的「墓墟龍」,在皇宮的地底鑿出了一條「石之長廊」,來將其封印。

封印運作的核心,是透過「符文」,也就是沿長廊依序排列的 $N$ 塊魔法石板,每塊石板上刻著 $1$ 到 $N$ 中唯一的數字。石板自左至右初始形成一個排列 $P_1,P_2,...,P_N (1 \le P_i \le N$ ,且兩兩不同 $)$ 。

然而封印並非永久,每隔一百年,符文能量便會失衡。若不進行校正,封印將會瓦解,世界會再次陷入危機。

你身為王國的首席研究員,你的工作是,在宮廷魔法師重新校正符文後,測量新的符文的「紊亂度」,「紊亂度」的定義如下:

對於所有 $i < j$ 有多少組 $(i,j)$ 滿足 $P_i > P_j$ 。

而在校正過程中,宮廷魔法師會依序施放 $Q$ 個魔法,其中,宮廷魔法師會使用的魔法共有 $4$ 種:

  1. 對稱共鳴:長廊震盪,將原先位置 $i$ 的石板移動到位置 $N+1-i$。
  2. 補數回響:牆面反射,將每個石板上的數字 $x$ 變為 $N+1-x$。
  3. 映元逆轉:石板間產生渦流,將數字 $i$ 的石板,移動到位置 $P_i$ 。
  4. 傳送遷移:在石板的前後方生成傳送門,將前 $k$ 個石板,依序傳送至最後面。

具體來說,令施展某個魔法前石板的排列為 $S_1,S_2,...,S_N$, 施展魔法後石板的排列為 $T_1,T_2,...,T_N$,則以上四種魔法分別會對石板產生以下影響:

  1. 對稱共鳴:$T_i = S_{N+1-i}$
  2. 補數回響:$T_i = N+1-S_i$
  3. 映元逆轉:$T_{S_i} = i$
  4. 傳送遷移:$T_i = S_{((i + k - 1) \mod N) + 1}$

你必須在宮廷魔法師施展完魔法後,確保符文的「紊亂度」與古書中記載的相同,才能確保「墓墟龍」繼續沉睡。

Input Format

輸入的第一行包含兩個正整數 $N$ 和 $Q$ ,以空白隔開,代表石板的數量和宮廷魔法師接著會會依序施放的 $Q$ 個魔法。

輸入的第二行包含 $N$ 個正整數 $P_1,P_2,...,P_N$,代表石板一開始的排列。

接著 $Q$ 行,代表宮廷魔法師依序施展的魔法,每行首先會包含一個正整數 $m_i$ ,若:

  • $m_i = 1$,代表宮廷魔法師施展的是魔法「對稱共鳴」。
  • $m_i = 2$,代表宮廷魔法師施展的是魔法「補數回響」。
  • $m_i = 3$,代表宮廷魔法師施展的是魔法「映元逆轉」。
  • $m_i = 4$,接著還會有一個整數 $k$ ,代表宮廷魔法師施展的是魔法「傳送遷移」,並且會將前 $k$ 個石板,依序傳送至最後面。

資料範圍:

  • $1 \le N,Q \le 3 \times 10^ 5$
  • $1 \le P_i \le N$
  • $\forall i \neq j , P_i \neq P_j$
  • $1 \le m_i \le 4$
  • $0 \le k \le N-1$

Output Format

請輸出一個整數,代表當 $Q$ 個魔法依序施放完後,最終石板的「紊亂度」。

Sample Input 1

3 5
1 2 3
1
2
3
4 2
1

Sample Output 1

1

Sample Input 2

9 9
9 1 5 6 8 2 7 3 4
1
4 7
3
2
4 8
1
3
4 6
2

Sample Output 2

12

Hints

在範例測資 1 中,最一開始的石板排列為 $[1,2,3]$。

在施放第一次魔法之後,石板的排列變為 $[3,2,1]$。

在施放第二次魔法之後,石板的排列變為 $[1,2,3]$。

在施放第三次魔法之後,石板的排列變為 $[1,2,3]$。

在施放第四次魔法之後,石板的排列變為 $[3,1,2]$。

在施放第五次魔法之後,石板的排列變為 $[2,1,3]$。

最終的「紊亂度」為 $1$ ,因為有一組 $(1,2)$ 滿足 $P_1 > P_2$ 且 $1 < 2$ 。

Problem Source

YTP 2025 高中組程式挑戰營 p16

Subtasks

No. Testdata Range Constraints Score
1 0~1 範例測試資料 0
2 2~13 宮廷魔法師不會使用魔法「映元逆轉」 8
3 0~37 無額外限制 12

Testdata and Limits

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