NOIP2018联赛总结

Day 0

打了几个模板,看了一下别人的博客,背了一下vimrc

Day 1

到了考场,先把vimrc配好

打开题目一先把三道题瞄了一眼,\(T1\)似乎是NOIP原题,\(T2\)看上去比较像小凯的疑惑,\(T3\)似乎很经典。我先花10分钟写了一下\(T1\),花半个小时写了一下\(T3\),过了样例之后感觉不太好拍就没管了。然后看\(T2\),一开始觉得和什么\(gcd\)之类的有关。突然想到之前讲过的一道题,然后写了一个最短路的做法,最后一直在卡常和查\(bug\)(结果\(T3\)的\(bug\)还没查出来)

road

期望得分 100
实际得分 100

考场思路

前不久还瞄了一眼积木大赛,觉得做法很有意思,结果没想到。。。(我抄我自己)

正解

直接\(\sum max(a_i-a_{i-1},0)\)即可

money

期望得分 100
实际得分 100

考场思路

首先发现最小的数\(Min\)一定不会变,然后我们设\(f_i\)为\(\%Min=i\)的最小能被这个集合表示的数。两个集合等价就相当于两个集合的\(f\)数组相等。我们先把给定的集合的\(f\)数组用\(spfa\)求出来,将\(f\)排序去贪心取。

正解

如果某个数可以被其他数表示,那么这个数就可以被删掉。那么直接从小到大排序做完全背包即可。

track

期望得分 100
实际得分 85

考场思路

一看就是一个二分答案,check就看树上长度大于等于\(Mid\)的链最多取出来的条数是否大于\(m\)。设\(f_x\)为保证子树答案最优的情况下。\(x\)向上传最长能传的链的长度。在某个节点处将他所有子树的\(f\)两两配对,取较小的配对,最后剩下来去最大的即可。

正解

就是这样,但是考场上写错了一个细节。。。

After Day 1

出来发现大家都\(AK\)了,我一开始也以为我的是对的。结果下午想了一下发现有个小地方写错了。想着希望\(Day 2\)不要挂分吧

Day 2

打开题目一先把三道题瞄了一眼,\(T1\)签到,\(T2\)看上去像一个计数类似的,\(T3\)一眼看上去\(ddp\)模板题。我先花20分钟写了一下\(T1\),过了样例就没管了。然后就一直在看\(T2\),一开始推了一个错的结论,一上去就写了个状压矩乘,结果连\(3\ 3\)都过不了,想了一下好像没那么简单。这个时候是\(9:30\),我觉得有点慌。后来又推了一个结论,已经\(10:30\)我就先看了下\(T3\),发现\(O(n^2)\)和链的情况很好写,就花20分钟写了。然后去写\(T2\)的\(dp\),写完之后已经\(11:30\)过了\(3\ 3\)之后发现过不了\(5\ 5\),然后一直调也没有调过去。

travel

期望得分 100
实际得分 80

考场思路

先把每个点的出边排序,树的话就是\(dfs\)序。环套树就枚举每条边看删去这条边之后的答案,去最优值即可。

正解

我写的是正解,然而在\(dfs\)时我直接按树的方式\(dfs(x,ff)\),由于我剪了一个枝,大样例能过。。

game

期望得分 65
实际得分 50

考场思路

一开始以为就是只要没有在一个\(2 \times 2\)的正方形里有右上角的1和左下角的0就可以了,然后就状压了前一行的状态,矩阵乘法,然而只能过\(n=2\)的。再一推发现每一个斜列上是单调的,想了一下以为如果\((i-1,j),(i,j-1)\)相同,\((i+1,j),(i,j+1)\)必须相同。然后觉得可以分奇偶算答案乘起来即可,然后写了个\(O(m*n^2)\)的\(dp\),最后过了\(3\ 3\),过不了\(5\ 5\),出来发现其实是错的。

正解

找规律题。发现在算出\(m=n+1\)的情况之后就是一个公比为\(3\)的等比数列了,搜索打表即可。

defense

期望得分 64
实际得分 64

考场思路

没怎么看这题,\(O(n^2)\)的暴力很好写。\(A1,A2\)的话就记一个前后缀\(dp\)就可以了

正解

当然可以用\(ddp\)。

回家之后发现这不是和\(nyg\)的模拟赛题差不多吗,直接倍增维护一个\(2\times 2\)的\(dp\)矩阵就行了。先处理出每个点子树和向上的\(dp\)值。在求\(lca\)的过程中,维护\(x,y\)到\(lca\)的矩阵,最后答案为\(x,y\)的子树和加上矩阵答案再加上\(lca\)向上的\(dp\)值就可以了。略有细节。

After Day 2

出来和罗大神讨论了一下\(T2\),他告诉了我那个为什么是错的,每个点影响的应该是一个以它为左上角的矩形。我在回家的路上突然想到我\(T1\)挂了。回去之后看了一下\(T3\)也想出来了正解。

总结

这次\(NOIP\)总体不是很理想,容易题写错了很多。

\(Day2\)的开题顺序也有问题,第三题其实会做,但由于觉得比较难写去写\(T2\)了。\(T2\)想错以后就有点慌,也没有认真观察部分分,只想着写正解。

太相信自己的感觉,考场上总想着硬刚,其实可以尝试打表的总只想自己推出来。

由于暴力比较难写就没写对拍,结果就导致挂分。

计划

接下来的几个月要补上一些我之前不太会的东西(如计算几何,数论等),多做一些\(HNOI\)的题。每次模拟考试多积累一些经验,在各种比赛里积累比赛经验。希望\(HNOI\)加油。

NOIP2018联赛总结的更多相关文章

  1. NOIP2018普及初赛解析

    2018年第二十四届全国青少年信息学奥林匹克联赛初赛普及组真题解析 一.单项选择题 1. 以下哪一种设备属于输出设备:(D) A.扫描仪 _B.键盘C. 鼠标 _D. 打印机 解析:送分题,前三个都是 ...

  2. NOIP2018题解

    Preface 联赛结束后趁着自己还没有一下子把题目忘光,所以趁机改一下题目. 没有和游记一起写主要是怕篇幅太长不美观. 因此这里我们直接讲题目,关于NOIP2018的一些心得和有趣的事详见:NOIP ...

  3. NOIp2018停课刷题记录

    Preface 老叶说了高中停课但是初中不停的消息后我就为争取民主献出一份力量 其实就是和老师申请了下让我们HW的三个人听课结果真停了 那么还是珍惜这次机会好好提升下自己吧不然就\(AFO\)了 Li ...

  4. CCF关于NOIP2018获奖证书发放的公告

    CCF定于即日起开始受理NOIP2018获奖证书申请.凡获得NOIP2018复赛提高组和普及组一二三等奖的选手均可申请证书.本次获奖证书有电子版和纸质版两种.电子版证书免费发放,纸质版证书收取部分工本 ...

  5. NOIP2018划水记

    // 6次NOIP里最爽的一次 去年的NOIP的游记:https://www.cnblogs.com/GXZlegend/p/7880740.html Day 0 特意请了一天假复习NOIP 实际上是 ...

  6. 租酥雨的NOIP2018赛前日记

    租酥雨的NOIP2018赛前日记 离\(\mbox{NOIP2018}\)只剩下不到一个月的时间辣! 想想自己再过一个月就要退役了,觉得有必要把这段时间的一些计划与安排记录下来. 就从国庆收假开始吧. ...

  7. 「NOIP2018」保卫王国

    「NOIP2018保卫王国」 题目描述 有一棵 \(n\) 个点, 点有点权 \(a_i\),\(m\) 组询问, 每次求钦点两个节点必须选或者必须不选后的树上最小点覆盖. \(1 \leq n, m ...

  8. $NOIP2018$ 爆踩全场记

    NOIP2018 Day-1 路还很长. 这里就是起点. 这是最简单的一步,但这是最关键的一步. 联赛就在眼前了,一切好像都已经准备好了,一切好像又都没准备好. 相信自己吧,\(mona\),这绝对不 ...

  9. $NOIP2018$ 暴踩全场计划实施方案

    \(NOIP2018\) 暴踩全场计划实施方案 改完题辣!该更博辣!(这么激动干嘛反正又没人看) 我要取一个霸气的名字.于是就这样了.原本打算是暴踩yyb计划实施方案的(来啊互相伤害啊) 信心流选手就 ...

随机推荐

  1. Java中JDK和JRE的区别是什么?它们的作用分别是什么?

    JDK和JRE是Java开发和运行工具,其中JDK包含了JRE,但是JRE是可以独立安装的,它们在Java开发和运行的时候起到不同的作用~ 1.JDK JDK是Java Development Kit ...

  2. 第四章 MyBatis-SQL映射文件

    MyBatis 真正的强大在于映射语句,专注于SQL,功能强大,SQL映射的配置却是相当简单 SQL映射文件的几个顶级元素(按照定义的顺序) mapper - namespace cache - 配置 ...

  3. python 3.6.1 安装scrapy踩坑之旅

    系统环境:win10 64位系统安装 python基础环境配置不做过多的介绍 window环境安装scrapy需要依赖pywin32,下载对应python版本的exe文件执行安装,下载的pywin32 ...

  4. scoketio

    服务器代码let net = require('net'); // 创建服务器 let server = net.createServer(); // 定义一个数组 ,存放每一个连接服务器的客户端用户 ...

  5. java8新特性:interface中的static方法和default方法

    java8中接口有两个新特性,一个是静态方法,一个是默认方法. static方法 java8中为接口新增了一项功能:定义一个或者多个静态方法. 定义用法和普通的static方法一样: public i ...

  6. PHPUnit实践一(初识)

    PHPUnit实践一(初识)     本系列教程所有的PHPUnit测试基于PHPUnit6.5.9版本,Lumen 5.5框架 前置 日常我们的普通用到的测试: 代码直接echo,debug等方法测 ...

  7. [转帖]分布式Unique ID的生成方法一览

    分布式Unique ID的生成方法一览 http://www.importnew.com/22211.html 分布式的Unique ID的用途如此广泛,从业务对象Id到日志的TraceId,本文总结 ...

  8. 判断String类型字符串是否为空的方法

    在项目中经常遇到要判断String类型的字段是否为空操作 我们可以用Apache提供的StringUtils这个工具类,不用自己去判断,也不用自己封装判断空的方法 它有两个版本,一个是org.apac ...

  9. mac 中登陆mysql忘记密码解决办法

    1.打开终端,输入命令:cd /usr/local/mysql/bin 2.mysql -uroot -p,用这条命令登陆时报错信息: 报错:Enter password: ERROR 1045 (2 ...

  10. checkbox选中事件的正确写法

    判断选中CHECKBOX事件  网上各种扯淡 搞死我了..加上总觉得smarty引擎和JSJQ有很多冲突.. $("#id").is(":checked");