101695: [AtCoder]ABC169 F - Knapsack for All Subsets

Memory Limit:256 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Score : $600$ points

Problem Statement

Given are a sequence of $N$ positive integers $A_1$, $A_2$, $\ldots$, $A_N$ and another positive integer $S$.
For a non-empty subset $T$ of the set $\{1, 2, \ldots , N \}$, let us define $f(T)$ as follows:

  • $f(T)$ is the number of different non-empty subsets $\{x_1, x_2, \ldots , x_k \}$ of $T$ such that $A_{x_1}+A_{x_2}+\cdots +A_{x_k} = S$.

Find the sum of $f(T)$ over all $2^N-1$ subsets $T$ of $\{1, 2, \ldots , N \}$. Since the sum can be enormous, print it modulo $998244353$.

Constraints

  • All values in input are integers.
  • $1 \leq N \leq 3000$
  • $1 \leq S \leq 3000$
  • $1 \leq A_i \leq 3000$

Input

Input is given from Standard Input in the following format:

$N$ $S$
$A_1$ $A_2$ $...$ $A_N$

Output

Print the sum of $f(T)$ modulo $998244353$.


Sample Input 1

3 4
2 2 4

Sample Output 1

6

For each $T$, the value of $f(T)$ is shown below. The sum of these values is $6$.

  • $f(\{1\}) = 0$
  • $f(\{2\}) = 0$
  • $f(\{3\}) = 1$ (One subset $\{3\}$ satisfies the condition.)
  • $f(\{1, 2\}) = 1$ ($\{1, 2\}$)
  • $f(\{2, 3\}) = 1$ ($\{3\}$)
  • $f(\{1, 3\}) = 1$ ($\{3\}$)
  • $f(\{1, 2, 3\}) = 2$ ($\{1, 2\}, \{3\}$)

Sample Input 2

5 8
9 9 9 9 9

Sample Output 2

0

Sample Input 3

10 10
3 1 4 1 5 9 2 6 5 3

Sample Output 3

3296

Input

题意翻译

已知包含 $N$ 个整数的序列 $A$,和一个整数 $S$。集合 $T$ 是 $\{1,2,3,\cdots,N\}$ 的非空子集。 定义函数 $f(T)$ 为: 满足 $ {x_1, x_2, \ldots , x_k }\in T$ 且 $ A_{x_1}+A_{x_2}+\cdots +A_{x_k} = S$ 的方案数。 求出所有的 $f(T)$ 之和。结果模 $998244353$。 Translated by @[immccn123](https://www.luogu.com.cn/user/385633).

加入题单

算法标签: