测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A14773. Fibonacci Additions

编程题 普及/提高-

题目描述

One of my most productive days was throwing away 1,000 lines of code.

— Ken Thompson



Fibonacci addition is an operation on an array $X$ of integers, parametrized by indices $l$ and $r$ . Fibonacci addition increases $X_l$ by $F_1$ , increases $X_{l + 1}$ by $F_2$ , and so on up to $X_r$ which is increased by $F_{r - l + 1}$ .

$F_i$ denotes the $i$ -th Fibonacci number ( $F_1 = 1$ , $F_2 = 1$ , $F_{i} = F_{i - 1} + F_{i - 2}$ for $i > 2$ ), and all operations are performed modulo $MOD$ .

You are given two arrays $A$ and $B$ of the same length. We will ask you to perform several Fibonacci additions on these arrays with different parameters, and after each operation you have to report whether arrays $A$ and $B$ are equal modulo $MOD$ .

输入格式

The first line contains 3 numbers $n$ , $q$ and $MOD$ ( $1 \le n, q \le 3\cdot 10^5, 1 \le MOD \le 10^9+7$ ) — the length of the arrays, the number of operations, and the number modulo which all operations are performed.

The second line contains $n$ numbers — array $A$ ( $0 \le A_i < MOD$ ).

The third line also contains $n$ numbers — array $B$ ( $0 \le B_i < MOD$ ).

The next $q$ lines contain character $c$ and two numbers $l$ and $r$ ( $1 \le l \le r \le n$ ) — operation parameters. If $c$ is "A", Fibonacci addition is to be performed on array $A$ , and if it is is "B", the operation is to be performed on $B$ .

输出格式

After each operation, print "YES" (without quotes) if the arrays are equal and "NO" otherwise. Letter case does not matter.

输入输出样例

输入 #1
3 5 3
2 2 1
0 0 0
A 1 3
A 1 3
B 1 1
B 2 2
A 3 3
输出 #1
YES
NO
NO
NO
YES
输入 #2
5 3 10
2 5 0 3 5
3 5 8 2 5
B 2 3
B 3 4
A 1 2
输出 #2
NO
NO
YES

说明/提示

Explanation of the test from the condition:

- Initially $A=[2,2,1]$ , $B=[0,0,0]$ .
- After operation "A 1 3": $A=[0,0,0]$ , $B=[0,0,0]$ (addition is modulo 3).
- After operation "A 1 3": $A=[1,1,2]$ , $B=[0,0,0]$ .
- After operation "B 1 1": $A=[1,1,2]$ , $B=[1,0,0]$ .
- After operation "B 2 2": $A=[1,1,2]$ , $B=[1,1,0]$ .
- After operation "A 3 3": $A=[1,1,0]$ , $B=[1,1,0]$ .
上一题 去做题 下一题