NOIp2018提高&普及游记
(这篇文章是去年写的)
day0
今天上了两节课后就出发了,大概是一点左右到达了宾馆,感觉宾馆条件是相当好的,然后两点出发,两点二十左右到达了考场,看到一群julao已经守候在了大门口,比如GZYjulao,ZJFjulao,YYRjulao,YGjulao,HYjulao等等等等...
然后二十七中开始了往年一贯的传统:合影,然后三个班的人就拍好队形,开始合影了,每次合影都感觉把cls和sls拍得十分挫。
分发完考证后,我先到合肥四十六中的考点去试普及组的机,打了几个比较基础的模板,一小时就这样过去了。
然后一路小跑着到了合肥一中提高组的考点去试机,试完比较基础的东西后,花了十五分钟打了个树剖,然后测了一下,没有任何毛病,于是就提前退场了。
和同学们吃完饭后,我回到宾馆听XJD讲了一下考场策略,就开始写这篇博客的day0了。
感觉自己准备的还算比较充分,我要将这几个月来的所有努力全部投入到这次考试中。
day1
早上起床后骑车去了考场,昨晚连续做了几个梦,都是梦见我如何被提高组的D1T1吊打,正当我忐忑不安地解压完试题后,发现一件重要的事:
D1T1竟然是原题!
于是2min码完T1后,开始浏览T2。
能做出D1T1对于我这种参加提高组的初中生来说已经很高兴了,带着这种心态,我开始在纸上算,然后根据样例和这个问题的性质发现:
只要删去能被其他数线性组合(系数是非负数)成的就好了。
那么exgcd无法解决这个问题,于是考虑用背包解决,写完背包,神奇地发现三组样例全过。
然后看了一下数据范围和时间,这题也正是用背包没有错,时间与空间都十分合理。
上了一个厕所后还剩下2.5h,于是开始看T3。
T3目测是数据结构或DP,正解不会,于是开始全力攻破所有的subtask:
对于a[i]=1,使用贪心。
对于b[i]=a[i]+1],使用二分。
对于m=1,使用树形DP(树上最长链)。
其余使用搜索。
对于我来说,day1早上也只能以这种方式结束了,虽然没能AK,但感觉还是打出了我们初中生的水平,赛出了精神。
因为早上打得比较顺,所以中午回去没有睡觉,看了集网王后直接去肝下午的普及组了。
打开普及组的题面后,就感觉今年的普及组题目不太妙,第三题看出了必须要用贪心或DP,第四题可能要用到树形DP或是字符串算法。
打完了T1T2后,我开始看T3,感觉很不妙,并不是往年那种普及组难度的DP,状态方程与边界处理比较麻烦,那也不能不要分吧,于是我先写了一个贪心,但是贪心却没有过第三组数据,看来虽然DP是我的弱项,但是该面对的还是要面对,我不得不用DP去写这道题,而不是用贪心去逃避。
设计好状态后,我开始推方程,感觉方程也比较好推,但是边界处理十分麻烦,我在上面调了一个半小时,也没有调出正确结果,此时离比赛结束还有1h。
迅速看T4,发现有不少subtask是可做的,于是花了20min写了一些subtask,转回头继续攻T3。
终于T3的前两组样例被我长时间的调试攻破了,但是第三组却又相差很多,只有最后5min了,也没有办法继续了,于是只有无奈检查文件,匆匆交题。
出来以后感觉有点沮丧,因为早上的亢奋导致今天下午做普及组的题心有余而力不足,如果明天不好好对待,可能这次普及一等和提高一等一个都拿不到,让我乘兴而来,败兴而归。
但是难是相对的,我觉得难的同时别的同学也不一定觉得简单,于是我分析了一下今天提高组的试题,思考明天day2的一些题目与算法:
今天T1为贪心,T2是DP,T3是数据结构,那么根据往年的惯例,明天会出现DP和图论,剩下的一题,可能是模拟,组合数学,搜索等等等等,于是我复习了这些算法的模板,准备好好打明天的day2,而不是因为day1的提高而松懈或是因为普及组的事而消沉。
day2
早上是七点起床的,吃好早饭后,我对今天的试题做了以下的分析:
1.今天会有一道图论和一道DP,也有可能是图上DP。
2.昨天普及组的题十分困难,今天的题目也不会像昨天那么水。
3.要抓好每一个subtask,这些小分是决定我是否省一的关键。
于是到达了考场,解压完试题发现果然T1是一个图,但仔细看了一下,其实是一棵基环树。
于是我花了1h想解决今天的T1,但是这题感觉很难,没有任何思路,无奈之下,浏览了一下T2和T3。
T2的话,感觉写暴力都很考验码量,T3一眼看出是一道树形DP。
仔细看了一下T2,暴力真的很烦,而且考场上拿分的应该也寥寥无几,于是使用了打表算法,拿个10-20分应该还是可以的。
T3改了一下数据范围,虽然刚开始也没什么用,但是在写完50分的做法以后,突然想到了一些问题是无需改变的,于是对那些无需改变的问题根本不需要DP,这样的做法能拿到50-100分。
回头看T1,还是只会写树上的,变成基环树就十分难写,只好写了60分的减弱树上版本,此时离考试结束只有3min,检查了一下文件,就这样提交了。
我的NOIp2018也到此结束。
总结:
1.这次提高组的D1放了几道较水的题,导致有些同学第一天打完后很松懈,没有来得及调整面对D2的难题,难题一定会有,所以不能松懈。
2.普及组的34两题难度有增加了,我要在学习提高组的同时夯实好普及组。
3.本次NOIp的subtask较多,设计到许多小分,但是这些小分也不能不要,也许5分都是决定你省一的关键,一定要针对不同的subtask灵活使用不同算法。
4.这次NOIp给我带来了对比赛策略一些很好的实践与感悟,我将在安徽省选中使用它们,不再犯同样的错误。
(去年的自己写的真不错)
NOIp2018提高&普及游记的更多相关文章
- NOIp2018提高组游记
Day1 T1 积木大赛 NOIp2013D2T1.....看到的时候我还以为我记错了,以为原题是一次可以随便加,这题只能加一,出考场后查了下发现一模一样. #include <iostream ...
- NOIP2018提高/普及成绩
明天就要出了,不忍看到自己爆零,现在很慌. 大家都考的如何呢?欢迎留言自己的分数或预估分数.
- [题解]NOIP2018(普及组)T1标题统计(title)
NOIP2018(普及组)T1标题统计(title) 题解 [代码(AC)] #include <iostream> #include <cstdio> #include &l ...
- [NOIp2018提高组]旅行
[NOIp2018提高组]旅行: 题目大意: 一个\(n(n\le5000)\)个点,\(m(m\le n)\)条边的连通图.可以从任意一个点出发,前往任意一个相邻的未访问的结点,或沿着第一次来这个点 ...
- [NOIp2018提高组]赛道修建
[NOIp2018提高组]赛道修建 题目大意: 给你一棵\(n(n\le5\times10^4)\)个结点的树,从中找出\(m\)个没有公共边的路径,使得第\(m\)长的路径最长.问第\(m\)长的路 ...
- [NOIp2018提高组]货币系统
[NOIp2018提高组]货币系统 题目大意: 有\(n(n\le100)\)种不同的货币,每种货币的面额为\([1,25000]\)之间的一个整数.若两种货币系统能够组合出来的数是相同的的,那我们就 ...
- [NOIp2013提高组]积木大赛/[NOIp2018提高组]铺设道路
[NOIp2013提高组]积木大赛/[NOIp2018提高组]铺设道路 题目大意: 对于长度为\(n(n\le10^5)\)的非负数列\(A\),每次可以选取一个区间\(-1\).问将数列清零至少需要 ...
- NOIP2018提高组省一冲奖班模测训练(六)
NOIP2018提高组省一冲奖班模测训练(六) https://www.51nod.com/Contest/ContestDescription.html#!#contestId=80 20分钟AC掉 ...
- NOIP2018提高组省一冲奖班模测训练(五)
NOIP2018提高组省一冲奖班模测训练(五) http://www.51nod.com/Contest/ContestDescription.html#!#contestId=79 今天有点浪…… ...
随机推荐
- try catch(java)
1 try.catch.finally语句中,在如果try语句有return语句,则返回的之后当前try中变量此时对应的值,此后对变量做任何的修改,都不影响try中return的返回值 2 如果fin ...
- 备注信息的textarea 和 数据库 text类型
有时候需要用到备注信息 备注一些东西 但是它又不同于普通的输入框,要有换行啊 空格之类的,更有甚者还有其他更多的需求 1.更多需求 用富文本编辑器 2.普通需求 直接用input type=" ...
- linux下常用的基本设置与操作C语言实现
获取系统时间 int getlocaltime(struct tm *time) { struct timeval tv; time_t second; struct tm *temp; gettim ...
- POJ2230(打印欧拉回路)
Watchcow Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 7473 Accepted: 3270 Specia ...
- 机器学习:逻辑回归(scikit-learn 中的逻辑回归)
一.基础理解 使用逻辑回归算法训练模型时,为模型引入多项式项,使模型生成不规则的决策边界,对非线性的数据进行分类: 问题:引入多项式项后,模型变的复杂,可能产生过拟合现象: 方案:对模型正则化处理,损 ...
- MyCAT 1.6 安装部署
1 mycat 安装部署 1 下载解压Mycat-server-1.6-RELEASE-20161010173036-linux.tar.gz 到/usr/local/mycat 2 下载解压jdk- ...
- redmine2.3环境搭建
1. 安装redmine bitnami-redmine-2.3.0-0-windows-installer.exe安装到C:\BitNami\redmine-2.3.0-0目录下. 其中redmin ...
- .Net 使用 GregorianCalendar 获取任意一天为一年的第几周
private static int GetWeekOfYear(DateTime dt) { GregorianCalendar gc = new GregorianCalendar(); int ...
- python爬虫(4)--Cookie的使用
Cookie,指某些网站为了辨别用户身份.进行session跟踪而储存在用户本地终端上的数据(通常经过加密) 比如说有些网站需要登录后才能访问某个页面,在登录之前,你想抓取某个页面内容是不允许的.那么 ...
- 【总结整理】WebGIS学习-thinkGIS(三):关于影像金字塔、瓦片行列号、分辨率resolution
http://www.thinkgis.cn/topic/541a5206da8db186fd0673ba 1.前言 在上一节中我们知道了屏幕上一像素等于实际中多少单位长度(米或经纬度)的换算方法,而 ...