NOI2019 Day2游记
开场T1是个最短路优化建图,边向二维矩形内所有点连,本来可以写树套树的,但是卡空间(128MB),后来发现其实是不用把边都建出来的,只需要用数据结构模拟dijkstra的过程,支持二维区间对一个值取min,查询最小值并删除就可以,正解就是K-D Tree维护集合,复杂度是根号的(然而我不会),最后写了暴力建边、普通最短路(每条边只连向一个点)、矩形只有一维的线段树优化建边三个部分分,拿到72分走人(其实写树套树还有16分的,没时间了。。。)
T2一看就想起了THUSC的Day1T1,一样是形如以x/(x+y)的概率选择x,y/(x+y)的概率选择y 的期望/计数题,那时第一个想法就是打表(对THUSC也是这样),但是想想我还是不要乱来,先推推式子再说,然后推出了个可以O(n2m)dp的式子,然后就可以愉快地写40分暴力了(然而有10分最后没时间写了),结果因为没有预处理0的下降幂调了近一个小时没出来,然后就没时间打表了(最后出场的时候大家都说T2打表可过,自闭了。。。)
最后一小时我才开的T3,先二话不说拿下20分暴力,最后半个多小时一直在想每个点度数为1的部分分,它的数据范围很明显是O(nlogn)的算法,于是去想分治,最后相出个很笨的分治套分治,考后发现外面那层分治完全可以去掉,加个简单的预处理就可以,然鹅我没有想到。。。但是我的算法复杂度似乎没有问题,常数也不大(T3交互题,交互次数卡得很紧),复评时测了最终数据也能过,但是我犯了个更严重的错误,就是把点的标号搞错了(题目标号是0~n-1,我写的是1~n),最后5分钟没时间检查了,结果这个部分分就挂了,不过我前面的暴力没写错,自己手造的数据标号也是0~n-1,然而测样例时交互库竟没报错(神奇),应该是自己手误了,平时写分治都习惯写solve(1,n),结果写得太急就错了(以后有时间还是要把要注意的地方写下来,特别是题目中与自己编程习惯相违背的条件,方便自己检查),后来发现只要把solve(1,n)改成solve(0,n-1)就可以过,就这样丢了16分,有点可惜。。。
总结:这次要拿的分基本拿到了(虽然也只有基本分),但是还是有些分因为时间不够没拿到,感觉自己速度还是太慢了,写个暴力都要花很久时间(还写不完),最后连正解都没时间写(比如T2),根本还是自己代码能力不够,一些东西还不熟练(比如那个下降幂),自己做题量也不够。
附个考场时间表:前2个小时做T1(72分),2个小时做T2(30分),最后一小时做T3(20分),其实时间也没怎么安排好,但是实在是自己写得太慢了。
备注:K-D Tree的坑还是要找时间填掉,NOI的题也要去落实哈!
NOI2019 Day2游记的更多相关文章
- ZJOI2018 day2游记
省选讲课:还不错吧 ZJOI RP++ Day2: 题出的好!覆盖知识点广,题目又着切合实际的背景,解法比较自然. 给出题人点赞 ! 意识模糊地点开了题(考前不熬夜似乎还是很困qaq) T1:前一个小 ...
- ZJOI2019 day2 游记
应该是打的最没有信仰的一次比赛了 然后这个垃圾水平居然还拿了170,真是有毒 我的语文并不好所以还是写流水账吧 day-2 到了余姚,发现附近并没有什么好吃的,于是直接去kfc了 另外潮湿的空气对呼吸 ...
- NOI2019 Day1游记
Day1挂了,没什么好说的... 开场T1想到70分暴力就走人了,后来发现可以写到85...(听说有人写dfs过了95?233333) T2刚了2个多小时,得到每次只在中间填最大值的结论后不会区间DP ...
- FJOI2017 day2游记
day0 早上复习了一下凸包,lct的板子,发现现在的我好菜鸡啊,做题基本上还得看题解,自己不是很能分析出来. 下午去看考场,在附中机房又写了一遍lct,然后a掉了文理分科完就回去了. 回家的路上走在 ...
- ZJOI2018游记Round1
广告 ZJOI2018Round2游记 All Falls Down 非常感谢学弟学妹们捧场游记虽然这是一篇假游记 ZJOI Round1今天正式落下帷幕.在这过去的三天里遇到了很多朋友,见识了很多有 ...
- 【最后一战】NOI2019游记
NOI2019 游记 报到日 -1 打了一场LOJ发现rk5,听完cy讲T1后感觉自己非常智障--AK的那位老哥好强啊qwq 窝在宾馆里打打游戏敲敲板子 饥荒真好玩 等着明天去报道 要退役了反而心情平 ...
- NOI2019十二省联考旅游记
真的是去旅游的啊,毕竟菜是原罪嘛 Day 0 去指定地点试机,果然,键盘还是一如既往的不好用,我也不知道为什么. 晚上,教练请吃自助餐,幸福的像个胖子 Day 1 早上坐车过去,在车上看了看原来写过的 ...
- NOI2019网络同步赛游记
我发的邮件**f没收到,后来去专门询问才整到一个名额(估计是嫌我太菜,参加了也是垫底) day -1 上午写了到类似随机游走的高斯消元期望dp,然后颓颓颓 下午打洛咕月赛.T1一直50pts,后来才知 ...
- 【比赛游记】NOI2019打铁记
上接 NOIWC2019冬眠记.(THUPC,CTS,APIO)2019四连爆蛋记 和 THUSC2019酱油记. Day0.5 笔试 AK 是容易的. 国家队选手见面会太好玩了啊! Day1 Day ...
随机推荐
- java自定义异常和throw、throws的使用
一.自定义异常类 我们知道所有的异常都是Exception,所以我们需要自定义异常只需要继承那个Exception类就可以了.下面我们自定义一个异常类,代码如下: /** * 自定义异常, */ // ...
- K8S学习笔记之Grafana App for Kubernetes的配置
Grafana有一套针对Kubernetes监控的APP,和Grafana-Zabbix App类似,但是配置咋一看比较麻烦,主要参数都是来自K8S. 这款APP的详细介绍请参考Grafana App ...
- DevExpress之GridControl控件小知识
DevExpress之GridControl控件小知识 一.当代码中的DataTable中有建数据关系时,DevExpress 的 GridControl 会自动增加一个子视图 .列名也就是子表的字段 ...
- Spring Boot 的自动配置探究、自制一个starter pom
//TODO @Conditional @Condition
- Matlab中介者模式
中介者模式(Mediator Pattern)是用来降低多个对象和类之间的通信复杂性.这种模式提供了一个中介类,该类通常处理不同类之间的通信,并支持松耦合,使代码易于维护.想象一个乱糟糟的开发小组的工 ...
- 《微信小程序项目开发实战:用WePY、mpvue、Taro打造高效的小程序》(笔记1)WePY开发环境的安装
WePY的安装或更新都通过npm进行,全局安装或更新WePY命令行工具,使用以下命令: npm install wepy-cli -g 稍等片刻,成功安装后,即可创建WePY项目. 注意:如果npm安 ...
- js学习之面向对象
一.创建对象的方法 1. {} 字面量创建 var person ={ name: "lisi", age: , say: function(){ alert(this.name) ...
- Spark编译的三种方式
有三种编译方式,此文采用make-distribution.sh编译 其余两种为maven 和SBT编译 1.配置jdk 配置maven 配置scala 2.修改spark下make-distribu ...
- Linux基础:sort命令总结
本文只总结一些常用的用法,更详细的说明见man sort和sort --help. sort命令 sort命令用于串联排序指定文件并将结果写到标准输出. sort可以指定按照何种排序规则进行排序,如按 ...
- Springboot 整合Activiti流程设计器 完成一个简单的请假流程
目录 1.前言 2.准备 3.下载解压 4.开始整合 mysql + activiti + thymeleaf 2.配置文件 3.复制文件 4.加入控制器 5.修改配置文件 6.剔除启动类里面的安全校 ...