====== 2020.06.01-2020.06.07 周报 ====== ===== 团队训练 ===== 本周暂无 ===== _wzx27 ===== ==== 1.补题 ==== 补了一下之前比赛的题 [[http://acm.hdu.edu.cn/showproblem.php?pid=6589|HDU6589 Sequence]] 把数列 $a_i$ 写成其生成函数的形式 $f(x)=\sum a_ix^i$,每个操作 $k$ 相当于 $f(x)\cdot \sum x^{ik}$,由交换律知顺序不重要,所以可以统计每种操作的次数 $m_i$,最后有 $$f(x)\cdot (\sum x^{i})^{m_1} \cdot (\sum x^{2i})^{m_2} \cdot (\sum x^{3i})^{m_3}$$ 其中$(\sum x^{ki})^m = \sum {i+m-1 \choose m-1}x^{ik}$ 另外模数刚好是998244353,做三次NTT即可 #include #define ll long long #define pii_ pair #define mp_ make_pair #define pb push_back #define fi first #define se second #define rep(i,a,b) for(int i=(a);i<=(b);i++) #define per(i,a,b) for(int i=(a);i>=(b);i--) #define show1(a) cout<<#a<<" = "<