Part 1: 历届题目
NOI Online #1
T1: 完全不会做。正解是将所有第二类边(一个加 1 1 1 另一个减 1 1 1)加入,然后用并查集找到每一个连通块;然后对于每一个连通块判断其是否为二分图,如果是的话则必须满足左右两边的差不变且总和不变,否则只需要满足总和不变。
T2: 当时不会做,现在一眼切了。考虑经过一次冒泡排序后,每个位置前面比它大的数的数量会产生怎样的变化,然后用树状数组维护就行了。
T3: 会做。对于每一个 k k k ,我们将这个长度为 n n n 的环给拆分成 gcd ( n , k ) \gcd(n,k) gcd(n,k) 个子环,然后对于每一个子环贪心就行了。我们给每个子环分配一段连续的区间,然后内部安排的话采用一个单峰序列就行了。
总结:考察了图论,挖性质能力,小数据结构与贪心。三道中档题。
NOI Online #2
T1:题目看了半天,看懂了之后会做了。数学乱搞题,需要快读。
T2:脑抽想了半天,然后会做了。套路题,维护每一个数上一次出现的位置。注意需要使用线段树来维护区间加,查询区间平方和。
T3:苦思冥想半天,做不出来。二项式反演神仙题,钦定一些祖先对。需要使用树形背包。
总结:考察了数学,读入优化,中小数据结构,反演技巧与树形 dp \text{dp} dp (树形背包)。一道简单题,一道中档题,一道难题。
NOI Online #3
T1: 一秒切了。答案即为长度为 k + 1 k+1 k+1 的区间的最大和。
T2:想了一会儿,然后做出来了。考虑矩阵乘法,然后考虑优化。我们倍增,询问的时候向量乘矩阵。
T3:想了一会儿,然后做出来了。结果代码没写出来/kk 线性筛 φ \varphi φ ,然后大力 dp \text{dp} dp 就行了。似乎可以用 FWT ,但是我不会。
总结:考察了挖性质能力,矩阵乘法(向量乘矩阵的优化),数学,简单 dp \text{dp} dp 。一道简单题,两道中档题。
Part 2: 注意事项
猛刚正解,巧拿部分分,努力冲刺!
RP++ \huge {\text{RP++}} RP++