中后期拉跨,D 题调太久并且 WA 了 4 发,最后 rk12,结果发现海报上没有 rk10-13 的奖品。早上主办方打电话过来说是送 freebuds pro,正好缺耳机用,挺不错的。

中后期拉跨,D 题调太久并且 WA 了 4 发,最后 rk12,结果发现海报上没有 rk10-13 的奖品。早上主办方打电话过来说是送 freebuds pro,正好缺耳机用,挺不错的。

1001 95计费法

设 \(dp(i,j)\) 表示把前 \(i\) 个数分成 \(j\) 段的最小收益,预处理出每个区间的收益,然后 dp 即可,时间复杂度 \(O(n^3)\)

1002 客户预警

直接模拟题意,记录前缀和进行比较即可,比较大小时可以通过移项规避掉除法,避免精度问题。

1003 直播

二分答案,验证答案时每条边的流量上限可以算出,显然是一个最大流问题,而特殊的 CDN 节点只有 5 个,考虑枚举 \(2^5\) 种每个 CDN 节点是否被使用的情况,
对于一个被使用的 CDN 节点,需要保证它有从 1 号点流入的流量,也要保证它可以流出无限的流量,把它拆成一个入点和一个出点,入点向 T 连一条流量为 1 的边,
S 向出点连一条流量为 inf 的边,跑 dinic 看是否满流即可。

1004 机器人

\(x,y\) 两维显然可以拆开做。设 \(f_{[l,r]}(x)\) 表示 \(x\) 经过 \([l,r]\) 区间内所有操作后变成的数,那么这个函数一定是一段水平线段 + 一段斜率为 1 的线段 +
一段水平线段,这个结构是支持合并的,用线段树维护即可。
也可以直接用 IOI2021 candies 这道题的做法来做。

1005 带权子集和

考虑 \(sum(S)^k\) 的意义,相当于有 \(k\) 个位置,每个位置需要选出一个 \(S\) 里面的元素乘起来求和,再乘上系数 \(x^{|S|}\)。 那么考虑每个元素 \(a_i\) 的贡献,那么它要么不在 \(S\) 中,要么是在 \(S\) 中并且被选了 \(0\sim k\) 次。那么它的生成函数就是 \(F_i(y)=1+x\sum_{j=0}^k \frac{(a_iy)^j}{j!}\) ,最后的答案就是 \(k!\cdot [y^k]\prod F_i(y)\) 。只用保留 \(0\sim k\) 项的系数,时间复杂度 \(O(nk\log k)\)

1006 信道定向

考虑度数最大的节点,假设它的度数是 \(maxdeg\) ,那么显然答案不会低于 \(\lceil \frac {maxdeg} 2 \rceil\) ,而为了达到这个下界,
可以考虑用若干条从奇点至奇点的路径以及若干条欧拉回路覆盖这幅图。

1007 三角函数

先用一次 \(\cos\) 得到 \(1\) ,然后用一次 \(\arctan\) 之后再用一次 \(\sin\) 或者 \(\cos\) ,类似辗转相减,反复这个过程即可,
每次用 \(\sin\) 还是 \(\cos\)