#P9695. [GDCPC 2023] Traveling in Cells

[GDCPC 2023] Traveling in Cells

题目描述

There are nn cells arranged in a row. The ii-th cell has a color cic_i and contains a ball with value viv_i.

You're going to travel several times in the cells. For each travel, you'll be given an integer xx and a set of colors A={a1,a2,,ak}\mathbb{A} = \{a_1, a_2, \cdots, a_k\} where cxAc_x \in \mathbb{A}. The travel starts from cell xx. During the travel, if you're located in cell ii you can next move to cell (i1)(i - 1) or (i+1)(i + 1). Note that you can't move out of these nn cells. Also at any time, the color of cell you're located in must belong to set A\mathbb{A}.

When you're in cell ii, you can choose to remove the ball in the cell and gain its value viv_i. As there is only one ball in each cell, you can only remove the ball from each cell once.

Your task is to process qq operations in order. Each operation is one of the following three types:

  • 1  p  x1\; p \; x: Change cpc_p to xx.
  • 2  p  x2\; p \; x: Change vpv_p to xx.
  • 3  x  k  a1  a2    ak3\; x\; k\; a_1\; a_2 \; \ldots\; a_k: Given the starting cell xx and the color set A={a1,a2,,ak}\mathbb{A} = \{a_1, a_2, \cdots, a_k\} of a travel, imagine that you're going on this travel, calculate the maximum total value you can gain. Note that this travel is only an imagination, thus the balls won't be truely removed. That is, all queries are independent.

输入格式

There are multiple test cases. The first line of the input contains an integer TT indicating the number of test cases. For each test case:

The first line contains two integers nn and qq (1n1051 \leq n \leq 10^5, 1q1051 \leq q \leq 10^5) indicating the number of cells and the number of operations.

The second line contains nn integers c1,c2,,cnc_1, c_2, \ldots, c_n (1cin1 \leq c_i \leq n) where cic_i is the initial color of the ii-th cell.

The third line contains nn integers v1,v2,,vnv_1, v_2, \ldots, v_n (1vi1091 \leq v_i \leq 10^9) where viv_i is the initial value of ball in the ii-th cell.

For the following qq lines, the ii-th line describes the ii-th operation. The input format is listed as follows:

  • 1  p  x1\; p\; x: 1pn1 \leq p \leq n and 1xn1 \leq x \leq n.
  • 2  p  x2\; p\; x: 1pn1 \leq p \leq n and 1x1091 \leq x \leq 10^9.
  • 3  x  k  a1  a2    ak3\; x\; k\; a_1\; a_2\; \ldots \; a_k: 1xn1 \leq x \leq n, 1a1<a2<<akn1 \leq a_1 < a_2 < \ldots < a_k \leq n and cx{a1,a2,,ak}c_x \in \{a_1, a_2, \cdots, a_k\}.

It's guaranteed that neither the sum of nn nor the sum of qq of all test cases will exceed 3×1053 \times 10^5. Also the sum of kk of all test cases will not exceed 10610^6.

输出格式

For each operation of type 33 output one line containing one integer, indicating the maximum total value you can gain.

2
5 10
1 2 3 1 2
1 10 100 1000 10000
3 3 1 3
3 3 2 2 3
2 5 20000
2 3 200
3 3 2 1 3
3 3 3 1 2 3
1 3 4
2 1 100000
1 2 2
3 1 2 1 2
4 1
1 2 3 4
1000000 1000000 1000000 1000000
3 4 4 1 2 3 4
100
110
1200
21211
100010
4000000