F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

Knapsack

Time Limit: 5000/2500 MS (Java/Others)    Memory Limit: 327680/327680 K (Java/Others)
Total Submission(s): 332    Accepted Submission(s): 49


Problem Description
有一个大小为 $n$ 的数组 $a_1,...,a_{n}$。

$a[l, r]$ 表示可重集合 $\{a_l \ldots a_r\}$。

有 $q$ 次询问,输出 $a[l, r]$ 有多少子集的和是 $k$ 的倍数。

答案对 $998244353$ 取模。
 

Input
第一行给出 $n, k$。

第二行给出 $n$ 个数字 $a_1,\ldots a_n$。

接下来给一个 $q$。

然后 $q$ 行,每行一个 $l, r$ 表示一次询问。


#### 评测数据规模

$n, q \leq 2 \times 10^5, 0 \leq a_i < k \leq 100$.

并且保证每次询问 $l \leq r$.
 

Output
输出一行,表示 $q$ 次询问的答案。

特别的,注意空集也是一种答案。

#### 样例解释

$[3, 4]$ 的答案有 $\empty, \{a_4\}$.

$[2, 4]$ 的答案有 $\empty,\{a_2,a_3\},\{a_4\},\{a_2,a_3,a_4\}$.

$[4, 4]$ 的答案有 $\empty,\{a_4\}$.
 

Sample Input
4 2 0 1 1 0 3 3 4 2 4 4 4
 

Sample Output
2 4 2
 

Source
 

Statistic | Submit | Discuss | Note
Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2024 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2024-05-12 10:34:03, Gzip enabled