HNOI2019总结

Day 1

开场看三道题,T1是个计算几何,T2是个操作树加\(border\),T3题意有点复杂。想T1想了半个多小时,发现那个钝角不是很会处理,但是40分暴力应该还是可以写,就是有点麻烦。再想T2,也没什么太好的思路,50分只会操作树\(+kmp+\)乱搞。大概9:00开始认真搞T3,看了看样例,感性理解下好像终结状态全都是连到\(n\),于是写了个爆搜,试了几组,好像是对的。发现\(w=0\)直接用\(n-3-\)与n相连的边的条数就行了,操作一条边也比较好做。写完之后发现\((x,n)\)的边不会再动,所以好像是个树的结构,算一次的话直接树形dp就行了。仔细思考了一下,每次树的一个节点都是一段区间,这个树好像就是一棵类似笛卡尔树的东西,操作某一条线相当于splay了一下,好像求个逆元就可以了。想出来大概10点,写到11点多拍上。然后写了一下T2的暴力\(kmp\)和对拍以及T1的20就下考了。

估分:20+20+100=140

实际:20+50+100=170

HNOI的数据强度可见一斑,肖大佬好像直接用暴力kmp拿了70..

Day 2

开场看三道题,好像都还比较清新。T1数据范围有点像bitset,T2看到\(k|p-1\)觉得应该需要一些原根一类的数学前置知识,T3一开始看有点像\(fft\),后来仔细一想是个最优化问题,只会\(O(n^3)\)暴力dp。感觉T3有点像什么dp优化,以为是要推一些结论然后单调队列,推了很久没推出来。于是先看T2,T2前20分直接暴力dp组合数。后面的很像SHOI的那个组合数问题,我只会\(O(k^2 log)\),当时没有去想fft,就先把暴力写了,去搞T1。先写了个30分,然后推了推发现一个联通块可以直接缩起来,如果是二分图要特殊考虑一下。然后想用这个缩起来后bitset。先把T3暴力写完去手写T1bitset,写完之后发现样例过不了,如果联通块大小为1时会有问题,当时因为考试已经快结束了,也没来得及想,就拿了暴力套了后面这部分交了。

估分:30+20+30=80

实际:30+20+30=80

考完出来说T2是单位根反演加上论文题

T1正解和我想的差不多,只要不往bitset方向想就行了。

T3完全走错方向了,50分贪心就行了

总结

总体来说还行,两天考下来没有挂分。但是D1T1没时间写,D2T1和D2T3稍微想偏了一点都有些遗憾。但是像D1T1的计算几何D2T2的单位根反演都是一些我不太熟悉的内容,还需要多学习。数据结构和一些贪心技巧还是不够熟练。希望能够在接下来的一段时间里补足。希望NOI加油。

计划

接下来的一段时间可能需要补上一些文化课的知识。对于计算几何和一些有关数论的高级知识是我的知识盲区,需要多了解一些这方面的知识。更重要的还是一些对思维能力方面的锻炼,一些基础算法的运用,以及对之前做过的题,考过的试的一些总结。还有之前一直没有做的一些题目,也需要完成。hnoi只是一个开始,接下来要更加努力。

HNOI2019总结的更多相关文章

  1. HNOI2019游记

    \(day~?\) 我们的老师告诉我说,你这次省选目标分:\(70\),拿不到,家法伺候.但其实,我的目标是不爆零!!! \(day~-1\) 这天晚上,我们的指导老师给我们试了一下ZJOI2019, ...

  2. Loj #3059. 「HNOI2019」序列

    Loj #3059. 「HNOI2019」序列 给定一个长度为 \(n\) 的序列 \(A_1, \ldots , A_n\),以及 \(m\) 个操作,每个操作将一个 \(A_i\) 修改为 \(k ...

  3. Loj #3056. 「HNOI2019」多边形

    Loj #3056. 「HNOI2019」多边形 小 R 与小 W 在玩游戏. 他们有一个边数为 \(n\) 的凸多边形,其顶点沿逆时针方向标号依次为 \(1,2,3, \ldots , n\).最开 ...

  4. 【BZOJ5491】[HNOI2019]多边形(模拟,组合计数)

    [HNOI2019]多边形(模拟,组合计数) 题面 洛谷 题解 突然特别想骂人,本来我考场现切了的,结果WA了几个点,刚刚拿代码一看有个地方忘记取模了. 首先发现终止态一定是所有点都向\(n\)连边( ...

  5. 【BZOJ5492】[HNOI2019]校园旅行(bfs)

    [HNOI2019]校园旅行(bfs) 题面 洛谷 题解 首先考虑暴力做法怎么做. 把所有可行的二元组全部丢进队列里,每次两个点分别向两侧拓展一个同色点,然后更新可行的情况. 这样子的复杂度是\(O( ...

  6. Loj #3055. 「HNOI2019」JOJO

    Loj #3055. 「HNOI2019」JOJO JOJO 的奇幻冒险是一部非常火的漫画.漫画中的男主角经常喜欢连续喊很多的「欧拉」或者「木大」. 为了防止字太多挡住漫画内容,现在打算在新的漫画中用 ...

  7. Loj 3058. 「HNOI2019」白兔之舞

    Loj 3058. 「HNOI2019」白兔之舞 题目描述 有一张顶点数为 \((L+1)\times n\) 的有向图.这张图的每个顶点由一个二元组 \((u,v)\) 表示 \((0\le u\l ...

  8. Loj #3057. 「HNOI2019」校园旅行

    Loj #3057. 「HNOI2019」校园旅行 某学校的每个建筑都有一个独特的编号.一天你在校园里无聊,决定在校园内随意地漫步. 你已经在校园里呆过一段时间,对校园内每个建筑的编号非常熟悉,于是你 ...

  9. HNOI2019 游记

    HNOI2019 游记 Day 0 其实考前几天,心里还是挺慌的.结果最后 Day 0 的时候,因为种种原因反而释然了.也许是觉得,在这一步退役,也没有什么好害怕的吧. OI 本身就是一项偶然性太大的 ...

随机推荐

  1. poj3468 线段树的懒惰标记

    题目链接:poj3468 题意:给定一段数组,有两种操作,一种是给某段区间加c,另一种是查询一段区间的和 思路:暴力的方法是每次都给这段区间的点加c,查询也遍历一遍区间,复杂度是n*n,肯定过不去,另 ...

  2. Python+Appium学习篇之WebView处理

    1.认识WebView 实例说明: 当你打开百度阅读APP→VIP全站去广告→用自带的 UI Automator去定位里面的元素,如图: 不管你去定位  '规则详情'  '开通'等等,都会定位不到,只 ...

  3. hadoop:如何运行自带wordcount

    1.在linux系统创建文件 vi aa.txt   --------i 进行编辑  输入  内容(多个单词例如:aa bb cc aa) 2.在HDFS上面创建文件夹 hdfs dfs -mkdir ...

  4. js总结:对于字符串的切割截取和合并

    1.函数:split() 功能:使用一个指定的分隔符把一个字符串分割存储到数组 例子: str=”jpg|bmp|gif|ico|png”; arr=str.split(”|”); //arr是一个包 ...

  5. shell脚本使用记录一:操作文件

    一,连接远程数据库(保证在服务器上能使用mysql命令行,至少要安装mysql客户端) #!/bin/bash HOSTNAME="ip" PORT=" USERNAME ...

  6. Django 组件之 ----- content-type

    Django 组件之 content-type的使用 一个表和多个表进行关联,但具体随着业务的加深,表不断的增加,关联的数量不断的增加,怎么通过一开始通过表的设计后,不在后期在修改表,彻底的解决这个问 ...

  7. 四、Object.defineProperty总结

    Object.defineProperty() 参考:https://segmentfault.com/a/1190000007434923 定义: 方法会直接在一个对象上定义一个新属性,或者修改一个 ...

  8. [转帖]buffer与cache的区别

    作者:沈万马链接:https://www.zhihu.com/question/26190832/answer/146259979来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...

  9. __new__和__init__的区别

    __new__是一个静态方法,而__init__是一个实例方法. __new__方法会返回一个创建的实例,而__init__什么都不返回. 只有在__new__返回一个cls的实例时后面的__init ...

  10. 老男孩python学习自修第十三天【md5加密】

    示例代码如下: hashlib_test.py #!/usr/bin/env python # _*_ coding:UTF-8 _*_ import hashlib def genPasswd(na ...