zoukankan      html  css  js  c++  java
  • 2018十一月刷题列表

    Preface

    NOIP也算是告下一段落了,不论成绩与否,都还是要继续走下去的。

    接下来的训练节奏就会慢慢偏向省选了,因此希望自己不要掉队吧。

    十一月其实剩下没多少了,但为了保持格式整齐还是写一写吧。


    List

    • 写完了被NOIP耽搁了好久的杜教筛及其前置技能狄利克雷卷积,感觉还是不错的。
    • 学了下FHQ Treap,一眼本命平衡树的感觉,具体看在平衡树的海洋中畅游(四)——FHQ TreapNOIP完了不是很想做题,只能学学算法?
    • Luogu P2596 [ZJOI2006]书架 显然是用平衡树来维护区间。我当然是选择了FHQ Treap,写起来很舒服,就是在查找一个数的位置时要记录一下父亲。
    • UVA11021 Tribles 又是上课时在大刘的书上看到的题。发现每只生物都相对独立,因此可以直接利用全概率公式来计算。
    • Luogu P2515 [HAOI2010]软件安装 想切一下DP题。一来看到这题发现好像是个ZZ的树形DP,仔细一看好像有环Tarjan缩一下就好了。
    • Luogu P3648 [APIO2014]序列分割 比较简单的斜率优化DP题。就是算斜率的地方有一个除的地方分母为可能为负然后就要特判不等式,所以直接写了一发double判精度然后就过了?
    • Luogu P3338 [ZJOI2014]力 重拾FFT后的第一题。最近由于数学姿势上去了终于可以稍微理解一下FFT了,复习了下板子就去写了,然后XJB反转一下数列就过了?
    • Luogu P3224 [HNOI2012]永无乡 据说是启发式合并平衡树?不过发现只有第K大的话值域线段树也是可以维护的,因此直接跑线段树合并就好了,复杂度约莫(O(mlog n))???
    • Luogu P1580 yyy loves Easter_Egg I 为了过试炼场写的一道模拟水题。用了一堆C++的奇技淫巧使得代码无比简短。less than 20 lines
    • Luogu P2042 [NOI2005]维护数列 超级恶心的平衡树维护区间裸题。还是用FHQ Treap维护,但是考虑到直接建树很慢,所以可以写成笛卡尔树的建树方式。
    • 衢州二中省选训练1 这个ZZ的名字是我取的。老叶让我们一群初三的2.5h做三道省选题我去,手速不够啊。这次是莫队专题。T1写了莫队+bitset乱艹就卡时A了貌似是全场唯一的一个AC?,T2暴力可能写丑了才(10)分。T3不会就写暴力找点然后为了卡常就手写松式基排,然后跑得比标程还快但是WA光了(110pts)就Rank1了???具体的题目:
      • T1:BZOJ 4810: [Ynoi2017]由乃的玉米田 像上面说的一样做就好了
      • T2:BZOJ 4866: [Ynoi2017]由乃的商场之旅 把每个数转化为一个二进制数然后发现一个区间合法那么意味着这个区间的异或值(0)或为某个(2)的幂次。直接莫队的复杂度(O(26cdot nsqrt n)),卡一卡常数可以过。
      • T3:BZOJ 3460: Jc的宿舍 不是很会做,那个强制在线好像是假的直接拆掉就好了。然后就是树上莫队的题了,用树状数组维护一下即可。复杂度挺正确的。
    • UVA11806 Cheerleaders 一眼容斥,剩下的组合数推一下就好了。
    • UVA11270 Tiling Dominoes 轮廓线DP(又称插头DP)的裸题,那个转移方程可以压得比较优美。。。
    • 花了两天的时间改NOIP2018的题目,总算是改完了:NOIP2018题解
    • Luogu P3527 [POI2011]MET-Meteors 学了下整体二分,感觉不难理解CDQ分治一样看了很简单然后想不出来。这道题的话套一个树状数组就可以(O(nlog^2n))了,用线段树可能回想CXR dalao那样T掉
    • Luogu P2617 Dynamic Rankings 区间第K小(大)的最强版本。可以考虑在静态区间(主席树)的基础上套个树状数组查询;或者是在动态修改(树状数组)的基础上套个整体二分维护询问。反正都是(O(nlog^2n))
    • Luogu P3645 [APIO2015]雅加达的摩天楼 题目显然是一个最短路,但是如果直接暴力建边的话边数复杂度将达到(n^2)。我们考虑设一个阈值(size),当(p_ile size)时造出子图然后连边,否则直接暴力连。取(size=sqrt n)时边数为(nsqrt n)。然后这题好像卡DJ,因此请SPFA出山吧。
    • Luogu P1110 [ZJOI2007]报表统计 这种不涉及区间问题的平衡树都懒得写Treap,直接上STL搞就好了。全局最小值显然是找前驱后继,用muitiset实现平衡树即可。相差值最小就是对于相邻的值维护一个带删除的堆即可。然而还是可以用multiset维护。
    • Luogu P3644 [APIO2015]八邻旁之桥 (k)的范围那么小我们就分类讨论吧。先把所有在河同侧的点排除掉,然后(k=1)时显然在剩下的点里找个中位数求出差即可。(k=2)的话我们把所有两侧的线段按照(x+y)(x)表示左边的点的坐标,(y)即为右边的)排个序,然后枚举断点动态统计所有数与中位数的差即可。用权值线段树实现即可。
    • 衢州二中省选训练2大翻车,又是莫队专题,T1做过但我忘了,然后暴力刚单调栈搞了(60pts),T2写了正解但忘了写离散化了然后直接上map维护T到(81pts)。T3貌似是树上莫队裸题,但我之前忘记学了所以又挂了。Rank2被XRY dalao爆踩。具体的题目:
    • Luogu P4074 [WC2013]糖果公园 十分裸的树上带修莫队,用桶维护每种颜色出现的位置即可。注意修改的时候看一下这个数的标记来决定是否删除。注意块的大小开成(n^{frac{2}{3}})
    • Luogu P3809 【模板】后缀排序 学了一发后缀数组,最近准备主攻字符串。SA肯定是要学的,刚开始ZZ的把字典序判错了WA了好几发。
    • POJ 2774Long Long Message 求两个字符串的最长公共前缀。我们直接把两个拼接在一起(注意在中间插入一个其他字符)然后SA求出height数组判断位置是否在两个串内即可。
    • Luogu P2463 [SDOI2008]Sandy的卡片 把所有字符串的差值拼接在一起(还是要插入其他字符),然后二分答案,判断是否可行就用height数组的性质(LCP(l,r)=min_{i=l}^j heigit_i)发现只要有(n)个连续的(heigit_ige mid)(sa_i)属于不同的串即可。
    • BZOJ 4310: 跳蚤 一道神仙题写+调花了我一晚上,注意到最后的答案为原串的字串,所以我们二分字串的排名,然后贪心地从后往前比对,如果当前这一段的字典序大于二分出的值就要划分一下。判字典序可以用RMQ+SA优化到(O(1))

    Postscript

    难受,11月就这样过去了,月考很爆炸。两周半没上课+天天去机房=大翻车

    主要是社会和数学和科学挂的比较惨,语文和英语在意料之中(英语口语真的低)

    社会么本人彻底放弃,这学期就没写过社会作业,然后班里二三十名。。。

    (98+97+108.8(85+23.8)+145+58.5=507.3)

    希望能狗住前(100)吧(( an 90)),感觉会被打死

    下个月考虑管控下文化课容我三思

  • 相关阅读:
    第二个月课堂009python之总结(002)
    python的接口自动化测试+ddt数据驱动(*****)
    python题(002)
    selenium问题归纳一:多个句柄索引会乱的问题
    多测师讲解python讲解__xlwt__模块(拓展莫模块002)
    多测师python面试题__整理和答案(001)高级讲师肖sir
    第二个月课堂012讲解 _ Unittest框架(上)_高级讲师肖sir
    多测师讲解课堂11课__selenium__错归纳_高级讲师肖sir
    ActionChains定位元素
    css使用方法
  • 原文地址:https://www.cnblogs.com/cjjsb/p/9954217.html
Copyright © 2011-2022 走看看