#214. [R35E]锦标赛

[R35E]锦标赛

时空限制

1S/512M

题目描述

一场盛大的锦标赛正在举行,共有 2n2^n 位选手参与,选手编号从 112n2^n。每位选手 ii 都有一个能力值 aia_i

比赛采用单败淘汰制,共进行 nn 轮。赛程是固定的:

  1. 初始轮 (第一轮):选手按编号顺序配对,即 (11 vs 22), (33 vs 44), ..., (2n12^n-1 vs 2n2^n)。
  2. 后续轮次:每一轮中,前一轮的胜者们将保持他们原来的相对顺序,再次按顺序配对比赛。例如,(1,2)(1,2) 号比赛的胜者,将在下一轮对阵 (3,4)(3,4) 号比赛的胜者。以此类推。

当两位选手 iijj 对战时,选手 ii 的获胜概率为 aiai+aj\frac{a_i}{a_i + a_j},选手 jj 的获胜概率则为 ajai+aj\frac{a_j}{a_i + a_j}

你的任务是计算每位选手最终赢得锦标赛冠军的概率。你需要将结果对 998244353998244353 取模。

由于答案可能是一个分数,设 P=998244353P = 998244353,一个最简分数 pq\frac{p}{q} 应输出 p×qP2modPp \times q^{P-2} \bmod{P}

格式

输入格式

第一行包含一个整数 nn

第二行包含 2n2^n 个整数,表示 a1,a2,,a2na_1, a_2, \dots, a_{2^n}。第 ii 个数表示第 ii 个人的能力值。

输出格式

输出一行,2n2^n 个整数,用空格隔开。第 ii 个整数表示第 ii 位选手赢得冠军的概率对 998244353998244353 取模后的结果。

样例

样例输入 #1

1
10 20

样例输出 #1

332748118 665496236

样例解释 #1

21=22^1=2 位选手,能力值分别为 10102020。 只有一轮比赛,选手 11 和选手 22 对战。 选手 11 获胜(即成为冠军)的概率是 1010+20=13\frac{10}{10+20} = \frac{1}{3}。 选手 22 获胜(即成为冠军)的概率是 2010+20=23\frac{20}{10+20} = \frac{2}{3}

将这两个概率对 998244353998244353 取模:

  • 对于 13\frac{1}{3},需要计算 139982443532(mod998244353)1 \cdot 3^{998244353-2} \pmod{998244353},结果为 332748118332748118
  • 对于 23\frac{2}{3},需要计算 239982443532(mod998244353)2 \cdot 3^{998244353-2} \pmod{998244353},结果为 665496236665496236

样例输入 #2

2
4 6 3 9

样例输出 #2

96533520 239578645 705901364 954475178

数据规模

对于 20%20 \% 的数据, 1n31 \leq n \leq 3

对于 100%100\% 的数据,满足 1n121 \le n \le 121ai1061 \le a_i \le 10^6