Truy vấn

Xem dạng PDF

Gửi bài giải

Điểm: 800 (OI)
Giới hạn thời gian: 25.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài

Cho một dãy gồm N số a1,a2,...,aN. Bạn cần thực hiện Q thao tác truy vấn / cập nhật sau:

  • 1 l r v: Lấy một đoạn số [l,r], tăng mỗi số lên v đơn vị. Nói cách khác, với mọi i[l,r] gán ai:=ai+v.
  • 2 l r: Tính giá trị của biểu thức i=lrf(ai)mod998244353.

Trong đó f(x)=Ax×xB với A,B được cho trước.

Input

  • Dòng 1: chứa ba số nguyên N,Q,A,B.
  • Dòng 2: chứa N số nguyên dương a1,a2,...,aN.
  • Dòng 3Q+2: mỗi dòng mô tả một thao tác cập nhật hoặc truy vấn, có dạng như đã miêu tả ở trên.

Output

  • Gồm một số dòng chứa đáp án của các truy vấn loại 2.

Constraint

  • N,Q105.
  • A,B20.
  • v109.

Sample Input

Copy
5 7 1 1
5 9 10 2 1
1 2 3 8
1 1 5 7
2 3 5
1 3 5 4
1 3 5 4
1 4 5 2
2 3 4

Sample Output

Copy
42
52

Subtask

  • Các test được sinh và sắp xếp theo thứ tự hoàn toàn ngầu nhiên.

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.