Bedao Mini Contest 20 - Queries

Xem dạng PDF

Gửi bài giải


Điểm: 0,50 (OI)
Giới hạn thời gian: 1.5s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

Tác giả:
Dạng bài
Ngôn ngữ cho phép
C, C++, Go, Java, Kotlin, Pascal, PyPy, Python, Rust, Scratch

Lihwy tuy là một Master Codeforces, Coordinator Bedao, Admin Vloy nhưng lại gặp khó khăn ở một bài toán sau, các bạn hãy giúp Lihwy nhé!

Cho hai số nguyên dương nq. Bạn cần thực hiện q truy vấn sau trên ba dãy số nguyên dương A, BCn phần tử:

1 x y k: Với mọi 0i<k, ta thực hiện thao tác By+i=Ax+i.

2 x y k: Với mọi 0i<k, ta thực hiện thao tác Cy+i=Bx+i.

3 x: In ra giá trị phần tử Cx.

Input

Dòng đầu tiên chứa hai số nguyên dương nq (1n,q5×105) - độ dài của dãy số nguyên dương và số lượng truy vấn.

Dòng thứ hai gồm n số nguyên dương A1,A2,...,An (1Ai5×105).

Dòng thứ ba gồm n số nguyên dương B1,B2,...,Bn (1Bi5×105).

Dòng thứ tư gồm n số nguyên dương C1,C2,...,Cn (1Ci5×105).

q dòng tiếp theo chứa một trong ba loại truy vấn. Với các truy vấn loại 12, dữ liệu đảm bảo max(x,y)+kn+1. Với các truy vấn loại 3, ta luôn có 1xn.

Output

Với mỗi truy vấn loại 3, in ra đáp án.

Scoring

Subtask Điểm Giới hạn
1 10 n,q5000
2 20 x=y trong mọi truy vấn
3 30 Chỉ có truy vấn loại 23
4 40 Không có ràng buộc gì thêm

Sample Input 1

Copy
5 4
1 2 3 5 4
4 2 3 1 5
2 4 3 5 1
3 3
1 3 1 3
2 1 1 3
3 3

Sample Output 1

Copy
3
4

Notes

Tại trước thời điểm truy vấn 3 đầu tiên, dãy C[2,4,3,5,1]. Do đó C3=3.

Tại trước thời điểm truy vấn 3 thứ hai, dãy C[3,5,4,5,1]. Do đó C3=4.


Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.