Bullion

AtCoder
IDabc230_h
Time8000ms
Memory256MB
Difficulty
Takahashi won a claw machine competition and was awarded "all-you-can-stuff" gold blocks. There are unlimited numbers of blocks weighing $w_1, w_2, \dots, w_K$ kilograms each, and an unlimited number of bags weighing $1$ kilogram each to stuff them. Takahashi can bring home one non-empty bag. A bag can contain zero or more other non-empty bags and zero or more gold blocks. After arranging a truck with a load capacity of $W$ kilograms, he gets interested in the number of ways to stuff gold blocks and bring home a bag that weighs $w$ kilograms in total for $w = 2, 3, \dots, W$. Find the number, modulo $998244353$, of possible states of the bag for each $w = 2, 3, \dots, W$. Here, * two gold blocks are said to be the same when their weights are the same; * two bags are said to be in the same state when the two multisets whose elements are the bags and gold blocks in the two bags are the same. ## Constraints * $2 \leq W \leq 2.5 \times 10^5$ * $1 \leq K \leq W$ * $1 \leq w_i \leq W$ $(1 \leq i \leq K)$ * $i \neq j \to w_i \neq w_j$ $(1 \leq i,j \leq K)$ * All values in input are integers. ## Input Input is given from Standard Input in the following format: $W$ $K$ $w_1$ $w_2$ $\dots$ $w_K$ [samples]
Samples
Input #1
4 1
1
Output #1
1
2
4

The figure below enumerates the possible states of the bag for $w = 2, 3, 4$. (A circle represents a bag.)
![image](https://img.atcoder.jp/ghi/5e1a4298e8b0992c767932915c7e93f4.png)
Input #2
10 10
1 2 3 4 5 6 7 8 9 10
Output #2
1
3
7
18
45
121
325
904
2546
API Response (JSON)
{
  "problem": {
    "name": "Bullion",
    "description": {
      "content": "Takahashi won a claw machine competition and was awarded \"all-you-can-stuff\" gold blocks.   There are unlimited numbers of blocks weighing $w_1, w_2, \\dots, w_K$ kilograms each, and an unlimited numbe",
      "description_type": "Markdown"
    },
    "platform": "AtCoder",
    "limit": {
      "time_limit": 8000,
      "memory_limit": 262144
    },
    "difficulty": "None",
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "abc230_h"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "Takahashi won a claw machine competition and was awarded \"all-you-can-stuff\" gold blocks.  \nThere are unlimited numbers of blocks weighing $w_1, w_2, \\dots, w_K$ kilograms each, and an unlimited numbe...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments