{"problem":{"name":"【模板】多项式复合集合幂级数","description":{"content":"给定一个集合幂级数 $F(x)$ 和一个多项式 $G(x)$，保证 $[x^{\\varnothing}]F(x)=0$。定义 $x$ 的乘法为子集卷积，你需要对 $S\\subseteq\\{1,2,\\cdots,n\\}$ 求出 $[x^S]G(F(x))$ 对 $998244353$ 取模后的值。 如果你仍不清楚题意，可以阅读题面最后的提示部分。","description_type":"Markdown"},"platform":"Luogu","limit":{"time_limit":5000,"memory_limit":524288},"difficulty":{"LuoguStyle":"P7"},"is_remote":true,"is_sync":true,"sync_url":null,"sign":"LGP10461"},"statements":[{"statement_type":"Markdown","content":"给定一个集合幂级数 $F(x)$ 和一个多项式 $G(x)$，保证 $[x^{\\varnothing}]F(x)=0$。定义 $x$ 的乘法为子集卷积，你需要对 $S\\subseteq\\{1,2,\\cdots,n\\}$ 求出 $[x^S]G(F(x))$ 对 $998244353$ 取模后的值。\n\n如果你仍不清楚题意，可以阅读题面最后的提示部分。\n\n## Input\n\n第一行一个正整数 $n$。\n\n接下来一行 $2^n$ 个非负整数，第 $i$ 个整数表示 $[x^S]F(x)$，其中 $a\\in S$ 当且仅当 $(i-1)$ 二进制下从低到高第 $a$ 位为 $1$。\n\n接下来一行 $n+1$ 个非负整数，第 $i$ 个整数表示 $[x^{i-1}]G(x)$。\n\n## Output\n\n输出一行 $2^n$ 个非负整数，第 $i$ 个整数表示 $[x^S]G(F(x))$ 对 $998244353$ 取模后的值，其中 $a\\in S$ 当且仅当 $(i-1)$ 二进制下从低到高第 $a$ 位为 $1$。\n\n[samples]\n\n## Note\n\n#### 【数据范围】\n\n对于所有数据，保证 $1\\le n\\le 20$，$[x^S]F(x),[x^n]G(x)\\in[0,998244353)\\cap\\mathbb Z$。\n\n本题有 $20$ 个测试点，第 $i$ 个测试点满足 $n=i$。\n\n#### 【提示】\n\n假设 $F(x)=\\displaystyle \\sum_S f_Sx^S$，那么 $[x^S]F(x)=f_S$。\n\n在本题中，$x$ 的乘法被定义为子集卷积，即：\n$$x^S\\cdot x^T=\\begin{cases}0&S\\cap T\\neq\\varnothing\\\\x^{S\\cup T}&\\text{otherwise}\\end{cases}$$\n\n**请注意内存访问连续性带来的效率差异。**","is_translate":false,"language":"English"}],"meta":{"iden":"LGP10461","tags":["快速沃尔什变换 FWT","快速莫比乌斯变换 FMT","集合幂级数，子集卷积","模板题"],"sample_group":[["2\n0 1 2 3\n2 1 1","2 1 2 7"],["4\n0 8 3 2 7 3 9 0 0 1 8 2 3 7 0 2\n1 0 4 8 2","1 0 0 192 0 448 168 8824 0 0 0 536 0 248 520 26560 "]],"created_at":"2026-03-03 11:09:25"}}