CF1349F1 Slime and Sequences (Easy Version)

定义一个长 nn 的正整数序列是好的,当且仅当对于每一个出现过的 kkk>1k>1),其最后一次出现前 k1k-1 出现过。

给定 nn,对于每个 i[1,n]i\in[1,n] 求所有好序列中 ii 的出现次数和,对 998244353998244353 取模。

1n50001\le n\le 5000

阅读全文 »

QOJ 8527 Power Divisions 做题记录

给定一个长 nn 的序列 aa,定义一个区间 [l,r][l,r] 是好的,当且仅当存在某个 xx 使得 2x=i=lr2ai2^x=\sum\limits_{i=l}^r 2^{a_i}。求将 aa 划分为若干个好的区间的方案数,对 109+710^9+7 取模。

1n3×1051\le n\le 3\times 10^50ai1060\le a_i\le 10^6

阅读全文 »

CF1707E Replace 做题记录

给定一个长 nn 的序列 aa,满足 1ain1 \leq a_i \leq n

定义函数 f([l,r])=[mini=lrai,maxi=lrai]f([l,r])=\left[\min\limits_{i=l}^r a_i,\max\limits_{i=l}^r a_i\right]qq 次询问,每次给定一个区间 [li,ri][l_i,r_i],求最少执行多少次变换 [l,r]f([l,r])[l,r] \rightarrow f([l,r]) 使得 [li,ri][l_i,r_i] 变成 [1,n][1,n],若无法变为 [1,n][1,n] 则输出 -1

1n,q1051\le n,q\le 10^5

阅读全文 »

AGC058F Authentic Tree DP 做题记录

对于 nn 个点的一棵无根树 TT,定义 f(T)f(T)

  • n=1n=1,则 f(T)=1f(T)=1
  • 否则:
    • 对于一条树边 ee,定义 Tx(e)T_x(e)Ty(e)T_y(e)TT 删去 ee 后分裂出的两棵树(不管顺序);
    • f(T)=(eedge(T)f(Tx(e))×f(Ty(e)))×1nf(T)=\left(\sum\limits_{e\in \text{edge}(T)} f(T_x(e))\times f(T_y(e))\right)\times \frac{1}{n}

给定一棵 nn 个点的无根树 AA,求 f(A) mod 998244353f(A)\text{ mod }998244353 的值。

2n50002\le n\le 5000

阅读全文 »