11.10模拟赛总结
Posted 卿吟酒
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了11.10模拟赛总结相关的知识,希望对你有一定的参考价值。
今早一点都不困!!
主要是六点四十多过来之后睡得很舒服
呼呼~
时间安排
7.50-8.05 看题
8.05-9.00 推T2,并敲出来(之所以从T2开始开,是看了一圈之后感觉2最可写-_-||)
9.00-10.00 调T2,先以为是自己kmp不对,发现没问题之后开始思考为什么假,在心态爆炸的边缘大鹏振翅,改出来之后直接交
10.00-10.40(不到)看了一眼T1开始开题,敲好之后飞速跑过大样例发现卡时
10.40-10.55 开始卡常,包括但不止包括乘法改二进制,快读,快写(中间试了他给的读入,但我用不了那个,一用就读不进去…)
10.55-11.10 开T3 感觉是个签到贪心,写完造了点数据验一验,跑了
11.10-11.30 推T4 看出来了是个每次把树上一段路径的权值变为0,其他为1,求树的直径的长度/2.但一下没想法
11.30 - 11.55 果断打暴力,不想拷贝T4数据了,写完之后就在oj上交了
11.55-11.05 感觉T4还可以再写一个部分分,拷贝版本之后写了几行发现似乎不太行,再加东西又写不完,就建文件夹和检查了
11.05-12.10 交题
题目分析
T1
这不权值线段树乱搞? 维护一个数的个数 s i z siz siz 和值的和 s u m sum sum,搞一个线段树外的 p y py py 变量记录加减操作带来的偏移量,求并单点赋值1,求交就是把点之外的区间赋值0
?怎么T了啊,线段树真就底层算法呗
复杂度是 O ( s u m O(sum O(sum l o g m a x ) logmax) logmax)
T2
首先,对于只出现一遍,直接kmp
出现多遍的,考虑完整对上时错位1个对上时,和前 n − 1 n-1 n−1 和后 n − 1 n-1 n−1 对上后再错位一个时要满足的条件
前者需要满足 x 1 = x m − ( m − 2 ) , x 2 = x m − ( m − 3 ) . . . . x_1=x_{m-(m-2)},x_2=x_{m-(m-3)}.... x1=xm−(m−2),x2=xm−(m−3)....
后者需要满足 x 1 = x 2 , x 2 = x 3 . . . x_1=x_2,x_2=x_3... x1=x2,x2=x3...
而当错位变成2的时候
前者需要满足 x 1 = x m − ( m − 3 ) , x 2 = x m − ( m − 4 ) . . . . x_1=x_{m-(m-3)},x_2=x_{m-(m-4)}.... x1=xm−(m−3),x2=xm−(m−4)....
后者需要满足 x 1 = x 3 , x 2 = x 4 . . . x_1=x_3,x_2=x_4... x1=x3,x2=x4...
所以我们可以惊人的发现一个性质,如果想要格外满足在匹配 n − 1 n-1 n−1 遍之后还能匹配上,那么需要满足 s s s 串有循环节,且长度至少为 ∣ s ∣ / 2 |s|/2 ∣s∣/2
但是直接加上m-循环节的长度,我们又会发现,会错
这是为什么呢?
考虑一个串 a a b a a b a a aabaabaa aabaabaa,循环节长度是3
如果想要加上循环节长度,需要满足
( 从 头 看 ) x 1 = x 4 , x 2 = x 5 , x 3 = x 6 , x 4 = x 7 , x 5 = x 8 (从头看)x_1=x_4,x_2=x_5,x_3=x_6,x_4=x_7,x_5=x_8 (从头看)x1=x4,x2=x5,x3=x6,x4=x7,x5=x8
( 从 尾 看 ) x 1 = x m − 2 = 6 , x 2 = x 7 , x 3 = x 8 (从尾看)x_1=x_{m-2=6},x_2=x_7,x_3=x_8 (从尾看)x1=xm−2=6,x2=x7,x3=x8
???等等,是不是有什么地方不对,我们发现,我们从前后推得到了不同的答案,若是所有等号成立,必须满足所有字符相同
因此,需要满足的另一个条件就是,串必须能整除循环节
考试的时候写自闭了
T3
显然可以贪心(但是细节写不好应该是有漏洞的)
从小到大排序之后,尽量多分组,无法分组时,从前面转移
(还是假了呢233)
T4
每次把树上一段链的值赋值为0,之后求树的直径
感觉可以维护子树内最长链,次长链,次次长链,但又发现不太行,没法判断属于哪个子树和应该减去/加上多少
考试总结
-
线段树真就底端算法呗
-
但凡我今早瞌睡一点这场考试就能爆炸,最后两个小时做题的速度简直飞起
-
沉着冷静,考出水平,T2心态快写炸了还是强行冷静又笔推了推
-
板子要背熟
以上是关于11.10模拟赛总结的主要内容,如果未能解决你的问题,请参考以下文章