BLSUMSEQ - Sum of subsequences

Giới hạn
  • Thời gian: 1.0s
  • Bộ nhớ: 1536MB
  • Mã nguồn: 50000 bytes

Cho số nguyên dương n và dãy số a 1 ...a n . Có q truy vấn thuộc hai dạng :

- Dạng 0 l r k : yêu cầu đưa ra số nguyên dương nhỏ thứ k không thể phân tích được thành tổng của một số các số trong dãy a l …a r .

- Dạng 1 l r x : yêu cầu đưa ra số cách phân tích x thành tổng của một số các số trong dãy a l …a r (mod 2 32 ).

Yêu cầu : cho trước số n và dãy a 1 …a­ n và q truy vấn thuộc hai dạng trên. Hãy lập trình trả lời các truy vấn đó.

Input :

- Dòng 1 : hai số n và q (1 ≤ n ≤ 100, 1 ≤ q ≤ 10000)

- Dòng 2 : gồm n số mô tả dãy a 1 …a n (0 ≤ a i ≤ 100)

- q dòng còn lại, mỗi dòng gồm 4 số, có dạng 0 l r k hoặc 1 l r x mô tả một truy vấn (1 ≤ l ≤ r ≤ n, 1 ≤ k ≤ 10 9 , 0 ≤ x ≤ 10 9 )

Output :

- q dòng, mỗi dòng là trả lời cho một truy vấn theo đúng thứ tự được đưa ra

Ví dụ :

Input :

5 3

1 0 2 4 1

0 2 3 2 1 1 4 0 1 2 5 3

0 2 3 2

1 1 4 0

1 2 5 3

Output :

3

1

2


  • Người up: kata69
  • Nguồn bài: Own problem