zoukankan      html  css  js  c++  java
  • 近期考试反思

    沙雕MouDing又来写考试反思了

    我怕我再不反思就连自己怎么死的也不知道了

    From 11.4


    我如果被卡线了就是我活该

    我输入输出和大小写一块错

    woc我都怀疑我脑子是不是有问题23333

    行吧如果换座位麻烦把我放在环境比较好的地方

    如果教练查我水表的话

    upd:我估计是不换了hhh

     

     

    From 10.31


     我最近越来越懒了

     

    最近的两场试起起落落的。

    一场直接变成$rk$36,貌似还不是本赛季最低。

    就直接暴露真实水平。

    我就是太飘了2333333

    一下打醒可还行。

    保持一颗平常心真的非常重要。

    可能是我头一回一个赛季都没有炸的特别严重

    然后之前攒的分一下子就用的差不多了

    稍难受,所以说还是要求稳,求平。

    哪怕难题不会做也要把自己能力范围内的分数拿到。

    话说那场我好像做到这一点了毕竟是暴露水平23333

    话说要11月了好像可以立新$flag$了23333

    吸取教训。

     

     

    From 10.28


    幸好我不是什么网红博主不然我就会被催更的打死23333

    前天踢球脚被踢了今天打球手又挫了我看我还是老老实实改题吧23333

     

    技能点分配(分配个P都没有

    变量名写错炸分可还行

    数组开太大导致CE可还行

    打表真的会对正解有什么美妙的启发

    推柿子真好玩然而我伪了

    稳住心态,寻找特点,不放过每一个疑似正解的思路

    考场上第一次yy链表可真爽

    暴力一定要有信仰,咸鱼玩家也要有梦想

     

    555我今天T3又没有写正解我不是人算了我去搞点知识点

     

     

     

    From 10.25


    对不起我姓鸽名咕

    把技能点分配一下:

    打表真的神(可是沙雕MouDing连暴力都写不对

    分类讨论可能会是一些题的正解

    组合数学要学会转化柿子路丽姐姐我错了5555

    状态数少并且不好存可以写hash表

    图论题很多都和树形结构有关

    快读要有负还要清空

     

     

     

    From 10.21


     对不起WZZ真的可以为所欲为。

    喵的睡一晚上果然没办法把所有缺的睡眠补回来。

     

    开题LNC真是猜对了wzz果然懒得写题目背景

    T1一开始感觉是搜索,T2没见过的柿子,T3好像要拼在一起的什么东西。

    开始写T1,$dp$是肯定的,然后就是枚举,看了将近半个小时还没有一个特别完美的思路主要是因为困的要命

    上了个厕所磕薄荷糖开始码,发现少了一个指数很开心,从30变70。

    考虑将两个状态压成三进制但是复杂度还是不可以。

    T2没怎么看明白估计自己不会就开始写T3。

    T3先来个$dijk$,然后把答案拼起来在最后发现自己伪了肯定要凉。

    然后去写了T2的10分。

     

    关于题解:

    其实考场T1正解了然后觉得过不去就没写(雾

    请问哪个出题人会把最劣复杂度6e8作为正解的???T2现在还咕着。

    T3大力随机化水过。

     

     

    技能点分配:

    不管是什么复杂度只要会有优化就值得一试,但是还是要具体分析

    好好睡觉

     

     

     

    From 10.20


    我LYD,就是爆零,就是屁也不会,初赛就退役,也不写博客。

    艾玛明天就更

     

     

     

    From 10.17


    心情不好心态炸裂所以咕咕咕去学知识点。

     

     

     

    From 10.15 to 10.16


    菜是原罪。

    16日晚:

    5555人均切题我枯了

     

    T1构造题,看着暴力分就有70分。部分分给的提示比较明显,分块考虑。

    我部分分的确分块了,但是并没有拓展到更普遍的情况。

    T2一眼觉得是01背包,然后部分分可以二进制优化。

    然后我发现每个数所能做的贡献就是当前数除2后向上取整,然后就没有然后了。

    T3非常迷,之后写卡特兰的部分分,然后一直在想如何枚举树的形态然后就死了。

     

    关于题解:

    T1分块之后还有些细节比如说剩下的余数什么的。

    T2发现如何统计答案以后比较显然,如果当前的数的一半大于总和那么才会有一些数没有做贡献。

    T3是个$dp$,需要用到前序和中序遍历的性质。

     

    技能点分配:

    部分分的提示,学会将特殊情况扩展到普遍情况。

    既然已经有了答案的统计方法就要去找特点或者举反例。

    前序遍历是先根再左子树,中序遍历是先左子树再根

     

     

     

    15日晚:

    很大的一个教训。

     

    开题。

    T1好像要推个柿子,T2高考化学完了我不是范妈di儿,T3一眼觉得可以二分。

    肛T1肛了一个多小时,什么也没有。心态稍炸。

    瞄了一眼别人电脑,kx切了T1,B哥切了T2。心态彻底炸了555

    也不是什么玩笑话。

    当时真的特别慌,出门上厕所要一直打自己脸,回来之后为了让自己冷静连着磕了好几颗薄荷糖。

    然后才能慢慢的去码暴力,最后也是崩了。

     

    T1是一个没有想到的凸包,T2高斯消元都对了就是没有想到要消系数。

    T3二分是对的但是没有想到按照初始位置排序之后只需要考虑单调递增就可以了。

     

    然后因为心态炸裂的原因导致T1交都没交,如果及时打完的话40分总会有吧,那样就苟下来了。

    但是既然已经过去了,那就这样吧,大不了一周以后再回去。

     

    技能点分配:

    坐标转化成线维护凸包。

    不仅要学会转化题意,也要会转化其它方面,比如验证啊什么的

    再看别人电脑就yasei。

    薄荷糖真好吃

     

     

     

    From 10.15


    开题。

    上来10分钟先读题。

    仔细看看好像T1是原来考试写过的一道题的简化版,调调改改大概半个小时结束了。

    T2概率期望?稍迷,题意还要理解一下。

    T3读题看了半天,觉得不可做,码了个暴力。

    之后左右又把T3切了,出门碰见DeepinC告诉我ZKT把T3切了然后我心态炸了5555

    码完暴力脑子宕机

     

    关于题解:

    T1贪心。

    T2神仙$dp$。

    几个$dp$数组的定义:

    $dp[i][j]$代表大小为$i$的森林第一棵树的大小为$j$的概率。

    转移为$dp[i][j]=dp[i-1][j-1]*(j-1)*inv[i]+dp[i-1][j]*(i-j)*inv[i]$

    $g[i][j]$是大小为$i$的森林深度不超过$j$的概率。

    $f[i][j]$是大小为$i$的树深度不超过$j$的概率。

    可以得到$f[i][j]=g[i-1][j-1]*inv[i-1]$

    然后$g$数组的转移,考虑拆成一棵树+一个森林

    也就是$g[i][j]=sum_{k=1}^{i}f[k][j] imes g[i-k][j] imes dp[i][k]$

     

    T3比较强%%%切了的大神

    一条边符合条件的要求是$ lleqslant min(st,to),rgeqslant max(st,to) $

    按照边两端端点较小的一个排序,然后将较大值插入主席树维护,然后查询区间。

    又用到了之前的结论:联通块==点数-边数

     

    技能点分配:

    联通块==点数-边数(诶我总是想不到这一点

    神仙$dp$要考虑性质去构造$dp$含义

     

     

     

    From 10.14


    喵的我炸了几场了这都。。

     

    开题。

    T1上来好像就是大模拟,T2稍迷,T3看了眼数据范围感觉可能会神?

    T1码码码,不到一个小时过了大样例,由于太苟所以只能扔了没法拍。

    T2只会40,然后觉得数据结构优化好像能拿60,然后愣了10分钟神想正解,并不会。

    %%%kx在我旁边把T2切了心态炸了555

    开始码60,死活不对,稍慌。

    赶紧滚去打T3的暴力,然后第二个样例都没过。

    还剩二十分钟然后我把暴力调过了(雾

    然后又死了

     

    关于题解:

    T1大模拟。

    T2有一个性质,是“最优解一定不超过两个区间”。

    证明的话题解给的很明白,接下来就很好写了。

     T3我水过去的我不是人555

     

    技能点分配:

    性质题比较苟,有性质就A,没有就死。

    给出了数据范围可以合理推断时间复杂度,然后再通过猜测的复杂度去判断近似的知识点。

    通过知识点大概会有一个方向,可能对于猜测性质会好一点。

    心态问题挺严重的,还是会不经意间关注周围人的进度。

    只能去减小这种影响。

    还有一定要好好打暴力。

     

     

     

    From 10.12 to 10.13


    诶我咕了几场了?? kuku

    13日下午:

    55555555翻盘战B哥翻盘了我被盘翻了

     

    开题:

    T1括号序列,卡特兰???T2好像有点奇怪,T3没看懂。

    先来肛T1,一直在想卡特兰+容斥,然后不会写555

    换题看T2,有一个非常迷的$dp$定义,我现在也开始好奇我怎么想出来的了。

    写写写,写完之后拍上,woc好像还可以??这给我kx不行。

    回来想了一会别的,时不时查一下T2。

    突然想到一个$hack$自己的点,有些情况没考虑到,回去检查。

    诶等会我是不是暴力和暴力拍的??

    然后用正解拍,第一个点就错了。

    我:%^#&@*#_*^#^@&*^!@#%!@&#^!@#)_&!(*@^#&%!@#&)_&!@#&*!%@#(_

    赶紧改。

    写完之后还有不到一个小时,权衡一下决定回去看T1.

    打了个表找规律,啥也没有,然后随手写了个辣鸡$dp$,然后和表对上了。

    我:@!#%&*@^!#^)!@&#!@^&*#^)!@^#*^!(@#^%@!^%&@#!&#*^!@%#*!^@#&

    最后写完没时间拍了。。。

    T1WA10分之后加了一个大于等于号就A了

    我不想再重复上述过程请自己脑补

     

    关于题解:

    T2状态定义比较苟。

    因为答案统计可以转化成二进制末尾0的个数,所以我们考虑二进制。

    因为最多200次加1所以我们考虑存储末尾8位二进制。(每次加1最多影响这么多

    因为当前8位都是0的时候后面连着的0也要算入答案,所以我们考虑记录8位以后的连续的0的个数。

    因为当前8位都是1的时候加1后面连着的1也要进位,所以我们考虑记录8位以后的连续的1的个数。

    所以综上所述,一共3维半。

    转移按照上面的思路进行转移即可。

     

    T3是一道二分图的题,也不能说完全是吧。

    如果不是二分图也就是有奇环,那么最终会形成一个三元环与题意不符。

    那么二分图染色判断,然后求每个联通块内两个点最小距离的最大值,相加即可。

     

    技能点分配:

    仔细推敲题意,根据题目特性去构造往往会是正确的。(其实我觉得我在扯淡

    关于二分图的转化。

     

     

     

    13日早上:

    信奥之威,舍我其谁。冲刺联赛,我必AK。

    大早上的自己奶自己会掉rp555

     

    开题,感觉是套好题。

    会做吗?不会就好题。

    T1拼凑,T2不会,T3看起来有点迷。

    T1先写了个$hash$表然后发现去重会很麻烦直接变成$4^N$然后就哭了。

    T2手推了不少规律但毫无卵用。

    T3好像无法将枚举模数的复杂度搞下去,只能写剪枝。。。

     

    关于题解:

    T1我$hash$表用上了kx大婶的剪枝就A掉了%%%猿小鲲

    T3暴力剪枝,如果不会使答案更优就不二分。

    T2不会555

     

    技能点分配:

    $hash$表真好用。

    尽可能减少冗杂多余的复杂度。

     

     

     

    12日下午:

    开题。

    T1一上来一个正方形拍在你脸上,数学的气息。T2原题后来被换了,T3不会,没见过555

    T1推了推柿子然后切了,T2只会写暴力,T3一直觉得是个结论题(事实证明我是sb

     

    关于题解:

    对不起我T2是暴力剪枝过的我有罪我向全国人民谢罪。

    T3是一道构造题,没见过,通过暴搜出最小单元然后拼凑,然后我写了4k多。。。

     

    技能点分配:

    暴力出奇迹,打表拿省一

    构造题通过构造最小单元之后拼凑全局答案。

     

     

     

     

    From 10.11


    开题。

    一开始看T1和以前一道矩阵快速幂很像,T2$N$的复杂度,T3原题?(可是我没做555

    肛T2,嘿咻嘿咻,不会awsl。

    维护一个栈感觉没有办法解决所有的情况。

    发现自己心态好像有点崩,调整一下。。

    然后想到一个栈存$pair$好像可以并且找出了所有情况,码码码,拍上了好像还行。

    woc两个小时了?

    滚回去看T1,$dp$并没有一个非常好的定义,先扔了。

    T3并没有写过但听说某NC用线段树+莫队水过去了??

    写完之后拍了一下调了几个小错并没有用多长时间。

    回去狗T1,555柿子好像错了。

    测一下大样例,T2还可以,T3跑了45s??怕不是要T成暴力

     

    关于题解:

    T1一开始我的定义是$f[i][j]$代表放到第$i$列最左边一列放了$j$个的方案数。

    与正解十分接近,并不是指定义,而是一个小结论。

    第$i$列和第$i+kn$列的棋子数是一样的。

    接下来组合数即可。

    T2维护一个栈(别问我是不是单调的我两个元素一个递增一个递减那么它到底是不是单调的我也不知道

    T3回滚莫队。

     

    技能点分配:

    合理的发现题目给的性质。

    当有一些奇特的$dp$定义的时候说不定就是一个性质。

    莫队就是强。

     

     

     

    From 10.11


    这次考试经历有点奇异。。。

    开题以后觉得T1水,先写T1。

    $hack$了最zz的贪心以后开始想怎么维护,二分什么的,半小时无果。

    然后左右的B哥和kx分别写完并对拍,貌似都是线段树??稍慌。

    不行了不会扔掉看T2。

    T2打了55分子任务没时间调然后20分钟调完T3暴力。

    回来看T1。

    诶这东西好像可以排序之后枚举再用堆维护前$k$大???

    然后就很开心,然后码完之后回去调T2。

     

    关于题解:

    T1的话,排序之后枚举最小长度,用堆维护合法的前$k$大。

    T2主席树上树上树上树上树上树,支持$kth$和查排名。

    T3还没调过5555

     

    技能点分配:

    新的数据结构以及yy能力。

    合理运用堆,如果两个变量可以考虑固定一个。

     

     

     

    From 10.10


     今天是炸分的第三天,感觉自己要凉55555

     

    开题,三道题的名字的确是中二的yapi

    T1读了读题,诶这是要推柿子是吧,T2好像是全场最水的,T3斐波那契。

    T1一上来就开始推柿子,然后去掉了$gcd$不会了555

    T2半个小时对拍了,感觉挺稳。

    T3暴力建边打树形感觉还好??

     

    然后我的T3输出格式挂了炸了60分55555555

     

    关于题解:

    T1考虑推柿子。

    要求满足$(a+b)|ab$,把公因子$d$提出来变成$({a}'+{b}') imes d|{a}'{b}' imes d^{2}$。

    消掉变成$({a}'+{b}')|{a}'{b}' imes d$,此时${a}'perp {b}'$。

    又因为${a}'+{b}'perp {a}'{b}'$,所以${a}'+{b}'|d$。

    设${a}'+{b}'=k$,因为${a}'+{b}'leq d$且$({a}'+{b}') imes dleq n$,所以${a}'+{b}'leq sqrt{n}$。

    枚举$k$,符合题意的$d$显然只有$frac{n}{d^{2}}$个。

    然后关于$ab$对数,两者互质,所以$aperp a+b$即$aperp k$即$varphi(k)$个。

    好切了。

    T2是$BIT$的裸题。

    T3也很好,我要先咕着。

     

    技能点分配:

    柿子的转化(打表出奇迹

     

     

     

    From 10.9


    炸了两场了真kx

    开题。

    T1上来看着好像很熟悉?T2大概看懂题意,T3又是一个什么二进制的诡异东西。

    T1再仔细想想,就是一个裸的容斥+高精,然而我写了2k多。。。

    T2是个稠密图,怎么样边都是$N^2$的,有点难受。。。

    两分钟把T3的暴力写了,回来刚。

    最后写了个$bitset$。

     

    其实不算特别难,但是细节没有处理好。。

    T1的当场yy的高精板子错了一个小地方。。

    T2如果是跳过的话需要清空但我没清。。

    T3是什么神仙数位dp。。

     

    技能点分配:

    细节一定要注意。

    多测的话如果复杂度没问题就及时清空,考虑全所有情况(问题是复杂度有问题5555

     

     

     

    From 10.8


    开题。

    T1好像是一道类似的题?T2又是$gcd$,T3看起来左右横跳。

    写会T1,$gcd$拆掉,分情况讨论,好像是小凯的诱惑疑惑?

    好吧现在变成背包不会做了5555

    T2根据之前做$gcd$题的经验,比如每次减半什么的(但并无卵用

    暴力写$lca$竟然写挂了??

    调了好久发现喵的父亲全都赋成1了%##%^$%^#&#%&#&*#^*@

    T3想写40分状压,然后发现状态太多写不了,死了。

    半个多小时回去看T1,诶这玩意是不是直接可以除来除去。。。

    然后到结束都没调出来。。。。

     

    关于题解:

    T1的话比较鬼,我先咕着。

    T2正解将每一条边的权值分解因数,然后塞到$vector$里暴力建边求直径。

    T3鸽了。

     

     

     

    From 10.8


    又一场打满了的暴力。。。

    开题以后过了一遍,看起来中规中矩的难度。

    T1读了边题认为是贪心,然后开始找贪心的方法,半个小时无果,非常蓝瘦。

    没办法了只能先扔了。

    T2是组合的改编吧应该路丽姐姐我错了我应该好好听课的QwQ

    当$mleq 100$的时候可以暴力打,特殊性质可以打表出规律,送了80分好评。

    然后开T3,一开始没有读懂题,后来仔细思考之后每次建出来的都是一条直线。

    一开始觉得能拿80分结果把自己$hack$了,只会40了555。

    过完大样例之后回去5分钟打了一个T1的70分暴力。

    中间想了一下T2好像可以莫队但是好像很轻松就能卡掉所以我没有写。

    想优化T1的$dp$但是无从下手,最后看了T3好像有20分我会写但是我太懒了。。。

     

    关于题解:

    T1的确是贪心,是没接触过的反悔贪心。

    维护小根堆,先把第一个塞进去,作为购买时所用。

    接下来遇到一个新的值,取出堆顶元素。

    如果当前的值不大于堆顶,那么说明此时更新不会变优,那么塞入当前元素让其作为被购买的用于更新。

    如果当前值大于堆顶,此时可以更新,将$a_{now}-a_{top}$更新进入答案。

    再向堆中塞入两个当前值,一个用于反悔,一个用于更新。

    如果以后存在一个值使得$a_{now}-a_{top}$更优,那么会成为$(a_{now}-a_{lst})-(a_{ls}t-a_{top})=a_{now}-a_{top}$反悔成功。

    T2的确正解就是莫队(莫队大法吼啊

    分块之后并没有被卡,关于$O(1)$转移的柿子可以推出来。

    T3我写的暴力并没有被卡。

    维护冰茶几时只将当前行的矩形及其以上连边,这样就保证一定合法。

    然后一个小技巧是联通块数=点数-边数,之前就出现过但是并没有记住555

    From kx:冰茶几的实质是棵树,因此可以运用这个结论,单纯无向图并不适用

     

    技能点分配:

    联通块数=点数-边数(一定要好好复习555 再次%%%kx大婶

    莫队打法吼啊。

    考试策略。。

    反悔贪心

     

     

     

    From 10.7


    还行吧这场。。。暴力打满。

     

    关于题解:

    T1比较神,细节比较多。

    首先根据出题人的口胡说是规定的两个数列强行变成了随机数据。

    大部分时间用来筛&1e7&个质数,之后还要动态找中位数。

    根据随机数据(雾,中位数的变化不会特别大,所以考虑莫队转移。

    然后细节就挂了。

    T2是一道卡常题。

    因为数据范围较小所以考虑开桶,又可以证明桶的指针不会增加,然后就没了。

    T3是神仙$dp$。

    两个数组$up$和$down$分别代表从下往上走到$x$节点和从$x$开始从上往下走的最优情况。

    然后因为链只能走一次,所以要去重,所以先更新答案再更新当前最优解。

    因为写题解的神犇说如果两条链顺序不同那么结果也不同,所以要存栈之后倒过来在跑一遍。

    非常好的一道题但我在口胡。

     

    技能点分配:

    考试策略还是半个小时不会就走,不能过于纠结一道题,毕竟押宝不是什么时候都管用

    但每次我用的时候都好使

    通过观察及证明得到一些结论会非常好用。

    一些数如果无法推出规律就当成随机数据,要相信没有那么多毒瘤出题人。

    毕竟我之前造数据实在是太难造了5555

     

     

     

    From 10.6


     真的已经菜出新境界了。

    不想写考试经过了,直接跳过。

    关于题解:

    T1其实挺好的。

    我一开始的思路就不太对,想$dp$但是并不会。

    部分分给提示了,树形,上次也有一道类似的从树形扩展出来的题。

    贪心想了,但是不会证明也没有打。

    首先是边数是联通块内边数/2向下取整的加和。

    之后贪心构造一个合法方案,细节还可以。

    T2暴力能拿90,正解是数据结构优化。

    口胡一个结论,将原数组改变成权值为下标位置为权值的$p$数组。

    那么对于每一对$i<j&&abs(p_i-p_j)<k$,两个位置的相对大小就是固定的。

    到现在其实也不是非常理解,只是大概。

    接下来线段树维护区间最小值建边跑拓扑即可。

    T3是一个结论题,贪心可以让每个边权只做一次贡献,所以是边权求和。

     

    技能点分配:

    贪心的确是个好东西。

    如果比较迷的东西多半可以考虑找结论以及找特点。

    还是部分分给提示,多想。

     

     

     

    From 10.5


    今儿晚上还有一场 我回来补晚上的了

     

    T1秒了是个大模拟,T2觉得好像保留几位可以找找规律?T3区间问题当然那要搞线段树啦

    事实告诉我们眼见的一定不是真的

    上来先开的T2,打了个表,还调了一会,结果死活没有出规律。

    可能它根本就没有规律吧。

    过去了快1个小时,一点东西都还没打,稍慌。

    回去看T1,手玩半天连样例都不对,懵的一批(差点拉住同桌问样例的事情555

    完了还是看T3吧。

    这个好像是个区间覆盖和懒标记的运用??

    码完上对拍,数据太难造了。

    调了一会加了个变量觉得好了很多,测几个点都过了,觉得自己稳了(flag++

    回去看T1,重新手玩还是不对,算了我还是先写着吧。

    写完在输入样例的时候发现自己手玩的是错的。。。

    &#@&*%!@(%^#!*(%!@#(^!@^%!&^%#^%&@#%

    喵的浪费了半个小时。

    匆匆忙忙打完T1竟然一边过了?稍开心。

    回去把T2的表打完了然后交了。

     

    T1基本上全都A了,T2拿了50,T3线段树写挂了只拿了10分

    话说纯暴力有70??那我以后不要写正解了。

     

    T3两种做法,一种是维护$hash$,我不大了解。

    另一种是维护当前操作的上下界,如果不合法判掉即可。

     

    技能点分配:

    关于暴力和正解的分界的确非常难把握。

    序列问题还要求有序的话可以维护上下界。

     

     

     

    T1约瑟夫,T2BIT,T3最长公共上升子序列。

    其实这场挺废的。

    T2之前不经意见看了人家写的题解,虽然我并不知情吧,只看了两眼觉得没意思就关了。

    T1约瑟夫之前做过好多边了可是就连线性的柿子都没记住更别说优化了。

    T3考完试都说是LYD原题,我根本就不知道 hecaoLYD不会做LYD的原题这可真棒啊

     

    问题还是很多的。

    之前的知识掌握的并不牢固,并没有深刻的理解。

    基础差的要死

    我怕不是要死了???

     

     

     

    From 10.4


    又是一套自闭卷

    T1肛了2个多小时,不过幸好它过了。(555我6k多人家15行我枯了

    然后T2和T3因为时间不够没法写。。

    说起来T3竟然因为没有读入$mod$数炸了4分??

    T1的暴力写错了kuku

     

    关于题解:

    T1分奇偶是肯定的,一种做法是两个set,在其中二分查找。

    我的做法比较迷,确定最左端和最右端的中点以后就可以确定覆盖区间了。

    在覆盖之前先将其中没有走到过的地方加到队列里,复杂度比较玄学。

     

     

    From 10.3


    还是弱啊。。。

    T1因为不了解$hash$表而导致写了1个小时。

    T2想写动态开点却忘记了删除,然后在此基础上数组开小炸分300*300=900???

    T3到现在还咕着。。

     

    关于题解:

    T1和暴力没区别。

    T2其实动态开点应该是没法写,因为用掉的点就算删除内存还是有的,开不下。。。

    排序后做背包,定义改成“达到当前价值至少的花费”,那么接下来它就是单调的了。

    于是可以二分。

     

    技能点分配:

    数据结构学傻了。。

    合理改造状态定义会变得优秀

     

     

     

    From 10.2


    连考两场可还行 。

    作为一个菜鸡并没有什么心理压力。

    三道题都看着很迷,感觉都跟初中数学有关系。

    T1想着然后把二分证伪了,打完了部分分。

    T2一看要解方程组就感觉有点恶心,并没有深刻去想。

    T3看起来好像可做,然后开始写。

    调了半天发现好像情况有点多,感觉自己想出了骗分的算法。

    然后开始码,写到最后都没调出来,急急忙忙写完T2的暴力就走了。

     

    关于题解:

    T1给出的都是一次函数的形式,选择出一个集合之后也是一次函数的形式。

    对于一个一次函数肯定是单增或单降的,那么就可以二分了(雾

    之前证伪的原因是我前后的函数并不是同一个。

    二分时间,找出当前时间最大的集合,验证即可。

    另外nth_element可以用$N$的复杂度将前$mid$个放在前面 其余的放在后面,但并不有序。

     

    T2的话,每一个点权可以表示成$k-x_1$或$k+x_1$的形式,$k$是路径上边权加加减减出来的东西。

    然后分深度奇偶讨论即可。

    T3鸽了

     

    技能点分配:

    不管是什么题都要严格按照题意,因为没有mod然后炸分了555

    一次函数加起来还是一次函数

    解方程组的题尽可能然变量少

     

    另外一场:

    得出结论:入门+省选==提高???

     

    T2意思是构造DAG的个数。

    首先两维的$dp$定义为总点集和最后一层的点集,按层插入可以保证是拓扑序。

    转移方程通过计算两种点与新点集的连边数来转移。

    之后去掉一维,但没有办法记录层的次序,所以只考虑从原点集转移到新点集的边。

    因为可以多次重复组合,于是考虑容斥。

     

    技能点分配:

    构造DAG可以分层,比较优秀

     

     

     

    From 9.29 & 10.1


     两场一起写。

    可以总结成一句话:我好菜啊

     

    关于10.1:

    放假回来困的不行。。。

    这是一场信心赛,我在考试的时候就知道会有一群人ak,然而雨我无瓜

    T1是一道贪心。

    T2是一道要从实际角度理解的组合数学,然而别人打表就能看出来

    T3是一道淼题但是我被卡hash了555

     

    技能点分配:

    组合数学可以转化柿子,不要只想着拆柿子

    联系实际含义

     

    有关9.29:

    T1上来就觉得和线段树有关系,T2想打个背包,T3看起来好迷。

    然后开始写T1,先码的部分分,在写特殊性质的时候卡了。

    一直在想怎么去维护覆盖区间。

    算了去写正解,离散化之后线段树。

    码完以后过了样例,开始对拍,但是不一会就出一个小错,非常恶心。

    调到懒标记的复杂度都不对之后才差不多,感觉都快成暴力了,然后心态就炸了。

    想了想T2,本来想打背包,发现价值是1e9就非常难受,那好像需要贪心了。

    打了特殊性质和暴力就扔了。

    T3写完暴力之后手膜一下以为找到了部分分的做法,写着写着感觉不太对。

    回去看一眼T1,结果找到了正确的懒标记维护办法,非常开心。

     

    关于题解:

    T1线段树,懒标记维护要充分利用异或在0和1之间的性质。

    T2是贪心,不过写的比较麻烦。

    枚举选了两个人都喜欢的个数,再从各自喜欢的里面找最小的,将其他的所有塞到树里查询前x小值之和。

    边界处理恶心了我半天。

    T3非常诡异,但是的确比较好。

    如果两个苹果可以同时幸存,那么它们两个的“为了保证该苹果存在而必须删去的苹果的集合”的交集为空。

    每一条边都是一个对应关系。

    分类讨论即可。

     

    技能点分配:

    正男则返有的时候倒过来思考会非常棒但我还是不会

    线段树是万能的,在出bug方面它也是万能的 

     

     

     

    From 9.27 to 9.28


     迫不及待为祖国母亲庆生

    因为我太弱了所以题没有改完所以只好两天连着写。

    反正炸分的确是一件令人开心的事情。

     

    27号的话

    上来先开题,T1看起来奇奇怪怪,诶怎么是个三角形。

    T2没看懂,T3看起来想两道原题的加和所以它更难了。

    一上来看T1,先打了个暴力。

    接下来开始看部分分,全部打完了又看了5分钟想出了正解。

    T2先写了个大%你,一直在纠结如果两个状态一样的话到底选哪个。

    T3发现最小的点都不会写,但是链的分好像是送的?

     

    结果T1炸了,没有控制边界,对拍的时候暴力和正解都越界了所以拍不出来。

    T2想错了,赛后miku一句“记搜”我就会写了,可是因为我的状态比较迷所以常数过大到现在没过。

    T3是一道神仙dp。

     

    接下来是28号

    上来开题,T1感觉很好写,T2感觉有点迷,T3之后打暴力。

    打完部分分以后T1就会了。。

    先开了T3的暴力,码完以后有qj了一个点。

    想了想好像要化简柿子,但是长度在变化导致无从下手。

    回去看T2,想了想码了个状压拍起来没错。

    最后还是炸了。

     

    T1的质数要筛1e6我少写了个0。

    T2有重边,题面给的很清楚但是我忽略了。

    T3到目前还在咕咕咕,题借都没看懂。

    但我的确因为想当然的认为单调是单增,忽略了单减而导致炸了14分。

     

    总体来说两场一共炸了49+60+39+14一共162分。

    开心不行

     

    技能点分配:

    所有的小细节都不能放过。

    重边自环考虑清楚。

    如果是两问的题可以考虑搞成pair。

    状态数较少考虑记忆话搜索。

     

     

     

    From 9.26


     只能说自己暴力打满。

    T1是一个见过了好几次的类似的题目,不过换成了平均值求$k$大。

    T2是一道组合数学路丽姐姐我错了

    T3是一道强制在线的查询不小于$x$个数的题。

    一上来读完题先看的T2。

    打了个表发现什么规律都没有,打了40分后考虑去推柿子。

    看了数据范围肯定跟$m$没关系或者是$logm$。

    考虑预处理出左边$i$个右边$j$个并起来有$k$个的方案数,但是写崩了然后就滚了。

    去看了一眼T3,发现只需要考虑修改的点改前改后对总答案的影响即可,所以它是$N^2$的。

    想了想需要快速计算每个点对全部询问的影响,那么可以搞一个主席树?

    但是建树比较困难,每一个位置可能会同时少多个区间或加入多个区间。

    码了个暴力之后扔了。

    回去看T1,码完暴力以后开始考虑正解。

    并没有什么特别好的思路,一瞬间想过什么二分但并不知道怎么维护。

     

    关于题解:

    T1就是二分答案,二分平均数之后对于每一个值减去二分的数,前缀和。

    之后我们可以发现一段和为负数的区间所对应的平均值是比二分出的数要小。

    也就是我们需要二分答案找到满足减去当前值以后恰好有$k$个和为负数的区间。

    那么这个值就是我们要找的值,比较显然具有单调性。

    接下来就是离散化之后找逆序对。

    T3的话正解是主席树,不过我还没有仔细研究,因为我写的是另外一种做法。

    每个区间按照线段树的分法最多有$log$个区间。

    那么我们就开$4N$个vector,将区间按照x排序后塞进去。

    再去单点查询,每次可以lower_bound在$log$的复杂度下得到答案。

    总复杂度$Nlog^2$。

    T2比较苟我才不会告诉你我调了半个小时的原因是因为我把sigma当成相乘了。

    因为时间不够了所以给出题解。

     

    技能点分配:

    有关平均数可以考虑将每个数减去平均数进行转化。

    区间问题考虑一下线段树,或者分治,都比较优秀。

    数学题去重

     

     

     

    From 9.25


    今天B组加餐完了我被撑死了

    还是一套比较诡异的题目。

    T1上来礼貌打表,看了两眼出了规律。

    码完之后竟然调了半天,原因是因为我把输入看错了555

    T2是一个非常裸的换根dp,感觉没什么好说的。

    码完两道题同时打完对拍此时是八点。

    接下来猛攻T3,这个要求是不是说的是回文子串啊。

    想了一会发现并不会符合正解复杂度的算法,开始码暴力。

    码完以后手%了几个都过了。

     

    T1为了不炸longlong还欧拉定理什么的,结果最后以为特判中没%导致炸了10分。

    T3理解错了题意,并不是要求回文子串,而是全部旋转完之后符合即可。

    T3暴力能拿80诶?

    T3是文艺平衡树诶?

    说起来之前被问道“treap和splay哪个比较熟”我回答什么都不熟于是我死了

     

    技能点分配:

    区间翻转问题可以考虑平衡树

     

     

     

    From 9.24


    这场是分组考的试,感觉没什么好说的我都250了

    T1部分分的提示很明显,和树上lca有关系。

    但是我并没有想到题目的特性从而将DAG转化成一颗树。

    其实仔细想想还是可以的。

    “一定会经过的点”也就是说,各个点向上走一定会经过的点。

    如果将每个点和上一个一定经过的点建边,就可以得到一颗树。

    然后lca就完了 这好像是一个叫支配树的东西。

    喵的班里40个化奥22个信奥班主任竟然只让化奥去9个***********        ——来自MouDing9月25日的怨念

     

    技能点分配:

    多考虑部分分的提示

    吹爆bitset

     

     

     

    From 9.22


    一场比较迷的考试。

    上来过了一眼题。

    T1是$N$的复杂度?T2暴力好像蛮好打,T3树的直径?

    上来先想T1,发现当前状态会影响前一个和后一个,也就是对整体有影响。

    于是状态定义比较困难,只能考虑多加一维写成$N^2$的。

    本来想着是一颗线段树维护高度,但复杂度过高。

    写了一个类似于单队优化的东西,对拍都没打就跑了。

    T2一上来先把暴力打完,因为和平方有关系所以理所当然的想到之前类似与“平方转化成点对”。

    但并没有想到如何维护,考虑二维莫队,但并不会分块和证明复杂度,所以没有打。

    T3的话看出来是直径以后写了一个$N^3$的类似与暴力的东西。

    在本来不知道的情况下想到了一个直径的性质,但感觉过于麻烦并没有去深究。

    调了几下过了样例就丢走了。

    之后去思考T1,发现每个点从上一个转移的最优点好像是固定的,而且好像是个单谷。

    考虑去三分优化,但时间并不充裕并且想的也不是非常明白。

     

    T1因为手写队列死了炸了19分,而且别人的$N^3$都有30分。

    T2对常数的估计并不准确导致测试点分治的时候开小炸了15分。

    T3其实我的写法是错的,但是竟然拿到了20分。

     

    关于题解:

    状态定义是$f[i]$为目前到第$i$个而且第$i$个不动的最小花费。

    T1的话有一个结论是“固定两个不动,中间的一段一定变为平的一段最优。”

    特别严谨的证明并不会,只能先口胡一下。

    如果当前两个不动且中间是平的,那么可以很清晰的得到如果只提高一个结果不会更优。

    如果当前两个不动且中间不平,每次肯定提高一个类似与“凹”型的更优,就可以得到一段平的。

    完了我自己都没办法说下去了

    然后关于柿子以及以后的解释我实在是不想写了。

     

    T2是一个类似与数据分治的东西,如果出现次数多就是二维前缀和,如果少就是平方转化成点对,四维偏序。

    然而二维莫队可以水过并且连块都不用分。

     

    T3与树的直径有关,可是我只写了一个当树内只存在唯一一条直径是成立的代码。

    断开的边肯定是从直径上出,两边dp求出正反子树内的最长链,之后yy一下。

     

    技能点分配:

    莫队打法好

     

     

     

    From 9.21


    emmmm炸了。

    一上来看题。

    T1是在mod意义下找给定区间中的最大值,T2看起来好迷啊,没见过的转移。T3题都没读懂。

    感觉好像T1比较好做一点,先想T1。

    第一眼感觉要不分个块或者搞个莫队,但是由于不会维护,扭头就扔了。

    这种区间查询可以用主席树吧好像。

    但是一开始也没打,毕竟没有什么把握。码了一个暴力和前缀和优化跑了。

    T2的转移看了半天,Y的话就是一个排序,但X好像很神。

    只会打$N^3$的,想了想要不BIT优化到两个$log$可能还不如原来的

    调了半天总算过了样例,也没打对拍就扔了。

    重新去读T3,关于它的四联通死活没搞明白,还以为最多就只能画一个十字。

     

    关于题解:

    T1:正解就是分块QwQ

    题解说的好像是什么调和级数并没有看的特别明白,只好自己口胡一下证明就算了

    比较显然的是对于一个模数$k$来说,在区间$[t*k$,$(t+1)*k-1]$中的数肯定越大越好。

    按照一定的块长分块,对于每个块处理出$maxi[i][j]$代表第$i$个块不大于$j$的数中最大的数是多少。

    每一次暴力处理即可。

     

    T2:感觉自己想不到然鹅神仙们把这题切了我好菜啊

    有两种做法:

    第一种是按照$y$来排序,用二维前缀和来优化,这题卡空间数组开不下,还需要优化一下内存。

    另外一种比较巧妙,按照$x$升序排序,可行的是一个从上往下的折线形状。

    倒序枚举每一个比当前$i$小的$j$,考虑$y_i$和$y_j$的大小关系:

    如果$y_i$>$y_j$,那么可以看做$i$向左下方连线连接到$j$,即$f[i][0]+=f[j][1]$;

    反之,可以看做$j$向右下方连线连接到$i$,即$f[j][1]+=f[i][0]$;

    最后统计答案即可。

     

    T3:没有看懂题

    题面中所说的所谓“四联通”其实指的就是可以互相到达的统一颜色的一整个联通块。

    需要一个结论:最优的操作一定可以保证下一次操作的位置是上一次的子集完了我口胡了

    算了我还是粘证明吧。

    然而我到现在还没改过来

    最近差的考试题好像有点多

     

     

     

    From 9.20


     这场发挥还好其实就是题水

    T1比较淼的dp,T2找了找有关柿子的规律,T3的话5分钟打完暴力。

    以上来看了看T1,诶这个是不是dp啊?

    随便定义了一下发现可以,码完以后随手%了几个小样例。

    感觉没什么问题就去看T2了,对拍也没写因为暴力不会打。

    T2一开始在推柿子,推了半天推不出来,先码了一个$N^4$的。

    再来看一下,发现枚举点对以及中间点可以$N^3$做。

    写完以后开始用大暴力和小暴力对拍。

    拍着没问题再去想优化复杂度。

    最后把$N^3$的柿子总结了一下,用bitset优化过了。

    T3先打了个暴力,觉得这次挺稳,就有点没有去想正解的意思。

    回去码了一个T1的$N^3log$的二分对拍,再把T2拍上。

    调来调去无所事事了二十分钟,然后去想T3。

    诶这东西好像开个虚点就可以。

    诶????我浪费了二十分钟?

    最后也没写完。

    T1的状态定义为第一个串匹配的位置,第二个串匹配的位置和总共修改次数,很水的转移。

    T2大概收获了一种从暴力推到正解的感觉,比较有用。

    T3一开始我的做法最多T到50,到现在我还在WA80。

     

    一定要仔细思考,暴力这东西还是蛮重要的,一般的正解都是从暴力优化过来的。

     

     

     

    From 9.19


    Rank20 挺烂的。

    上来过了一遍题。

    T1感觉暴力%你,T2是个板子,T3有些玄学。

    第一眼上来觉得可能要取模,但没有细想也就是把正解扔了

    先做T1,觉得细节比较多,想的是维护一个合法区间,二分查找下一个可以落脚的地方。

    写了半天总算过了样例,但自我感觉写的完全不对,就先放了一下。

    T2裸的Smily线段树合并,二十分钟码完。

    T3手%了样例以后大概理解了题意,本来以为可以想到大概$N^2$的做法。

    后来还是弃了去码暴力,其中包括调试什么的到了9点。

    才想起来回去改T1。

    调来调去还是过不了最简单的小数据。

    想去码暴力,时间不够了。

     

    T1的话,发现可以在%k意义下解决。

    如果[$L$,$R$]不能走,那么[$L%k$,$R%k$]也不能走。

    题解给的方法是把脚长等效化为黑区间。

    另外一种做法是正常区间覆盖,然后查询有没有一段不小于脚长的区间没有被覆盖。

     

    T3有点神仙还没来的及改。

    多考虑一下转化问题的思路。

     

     

    From 9.16 to 9.18


     连续考了三场就炸了三场

     

    第一场的话,由于实在是太困了,脑子都没有怎么动。

    时间太久远了已经忘了具体细节了。

     

    第二场。

    T1是一道有关gcd的题,所以我一开始打算从gcd的性质方面找找方向。

    推了半天没有找到什么gcd的通性,却忽略了gcd每一次至少减少一半也就是log的复杂度。

    T2考场上正解了,的确是分情况讨论。

    由于第二种情况并不会维护,所以弃掉了。

    T3只会写$N^3$的dp,忽略了考虑减少一维的做法,可能也是因为我不会转移吧。

    最后寄希望于随机化以为可以骗点分,但是一分都没有多。

    减枝反而比较优秀,T1减枝可以$N^2$A掉,T2用一种完全不正确的写法可以A。

    数据比较水,我人也比较水。

    看他们的分这套题应该很水但我一道也不会做QwQ

     

    第三场

    读了一会题之后会做了T1,明明找到了一个非常正确的思路却僵化在里面。

    nlog就能解决的东西偏要写一棵线段树,并调了两个多小时导致时间严重分配不均。

    感觉有点压宝的意味在里面,可是也没办法,读了题之后会做的只有T1。

    T2的话是很简单的一道题,dp可过,但是我过于纠结匹配的原因并没有想到。

    T3在最后想到了正常的暴力解法,但是时间不够没有调出来。

    然后我放弃了的随机化可以在T2中拿到50分的好成绩

    随机化和减枝不可兼得

     

    稍微总结一下。

    思路比较僵化,我感觉我这句话从头说到尾。

    dp定义比较迷,需要多练多想。

    在完成一个思路以后也要多加思考,尽可能简化打法。

    不要轻易的hack自己,正确性没有问题的话要去尝试一下。

    学会从多个方面去考虑,不要死钻一个胡同。

    能减枝先减枝,随机化作为保留选择。

     

    继续加油。

  • 相关阅读:
    monkeyrunner之夜神模拟器的安装与使用(二)
    monkeyrunner之安卓开发环境搭建(一)
    MySQL 返回未包含在group by中的列
    MySQL数据库初体验
    MongoDB安装
    关于数据库你必须知道的事~
    PostgreSQL中的MVCC 事务隔离
    深入浅出MySQL之索引为什么要下推?
    Java集合篇:Map集合的几种遍历方式及性能测试
    Oracle11g:数据库恢复总结
  • 原文地址:https://www.cnblogs.com/MouDing/p/11542594.html
Copyright © 2011-2022 走看看