其他分享
首页 > 其他分享> > ABC245 做题记录

ABC245 做题记录

作者:互联网

目录

A - Good morning

比大小

B - Mex

求一个序列的 mex,暴力

C - Choose Elements

设 \(f_{i,0/1}\) 表示第 \(i\) 位放 \(a_i\) 或者 \(b_i\) 的话前 \(i\) 位是否合法。

转移条件是绝对值差 \(\le K\) 直接转移即可,最后判断 \(f_{n,0/1}\) 是否有一个合法即可。

D - Polynomial division

给定多项式 \(A\) 和多项式 \(C\),求多项式 \(B\),已知 \(A * B = C\)。

因为

\[\begin{aligned} c_{n+m} & = b_m \times a_n \\ c_{n+m-1} & = b_{m-1} \times a_n + b_{m} \times a_{n-1} \\ c_{n+m-2} & = b_{m-2} \times a_{n} + b_{m-1} \times a_{n-1} + b_{m} \times a_{n-2} \\ \cdots & = \cdots \end{aligned} \]

从上向下推下去即可。

注意要倒着,正着的话存在 \(a_0 = 0\) 就会寄掉!

E - Wrapping Chocolate

把两种点先按照 \(x\) 一维从小到大进行排序,

从小到大枚举第二种点 \(b_i\),把第一种点中 \(x\) 值 \(\le b_{i.x}\) 的加进去。

然后第二种点匹配的时候,要找能匹配的点中 \(y\) 最大的。

不难发现这样贪心匹配是对的。

因为后面的第二类点已经保证了 \(x\) 值比当前这些大,但是并没有保证 \(y\) 值比当前这些大。

F - Endless Walk

板子题。

缩点之后建反图跑一边拓扑排序即可。

标签:记录,多项式,Wrapping,times,cdots,即可,ABC245,aligned
来源: https://www.cnblogs.com/Silymtics/p/ABC245.html