2023NOIP A层联测30 总结

今天去体检了,大概9点才回来。

T1 给定一个序列 { a n } \{a_n\} {an},有 m m m 次操作,形如 l r v,表示将 [ l , r ] [l,r] [l,r] 的每个 a i a_i ai 变为 max ⁡ ( a i , v ) \max(a_i,v) max(ai,v)。求最终的序列, n ≤ 1 0 5 , m ≤ 1 0 7 n\le10^5,m\le10^7 n105,m107。没什么思路,感觉无论如何都要给 m m m 带个 log ⁡ \log log,还考虑过分块,但是复杂度不对。后面就把查询放在vector里面,用到再放进set里面更新答案,是暴力。后面又去骗20pts特殊性质。题解把预处理st表倒过来做,和tjm的分块做法,真的很巧妙。

T2 一个图,有重边自环,求任两点之间路径的异或和最大值, n , m ≤ 1 0 5 , w i ≤ 1 0 18 n,m\le10^5,w_i\le10^{18} n,m105,wi1018。没有思路,直接打了暴力,还看错题了,以为异或和不会重复算经过的边,就喜提 0 p t s 0pts 0pts。正解是分析性质+线性基。今天复习了线性基。

T3 k k k 个点,每个点有一个等腰直角三角形,点在斜边的中点,斜边与坐标轴平行,三角形不相交斜边长相等,且不超出范围。问斜边最大长度。去写了20pts暴力,只需暴力求出两个点,4 个状态最大不交长度,在枚举状态即可。但是分类讨论,搞了半天发现情况好多,估计打不完而且还容易出错,就不打了。

T4 字符串有 n n n A , B A,B A,B,每次操作可以交换相邻两个字符,问最少操作几次,使得字符串可以被划分为 k k k 个子序列,每个子序列中 A , B A,B A,B 个数相等,且 A A A 都在 B B B 左边, 1 ≤ k ≤ n ≤ 1 0 6 1\le k\le n\le10^6 1kn106。去打暴力,结果发现判断字符串是否可行挂了,调不出来,真遗憾。

期望得分:80+15+0+0=95pts

实际得分:80+0+0+0=80pts

总结:代码实现能力不足,暴力都没打出来,实现的时候情况要讨论清楚。思维能力有待提升。
平衡时间复杂度的数据结构,分块是其中之一。记住还有大样例,打完暴力要测大样例。

你可能感兴趣的:(学习方法)