day0

  第一件事当然是去酒店入住+领一堆东西。

  感觉酒店不错,而且离学校挺近的,走路10分钟不到,骑车5分钟就到了。

  然后去学校吃饭。我们在教工饭堂吃饭,饭菜还不错,但是没有筷子差评。

  吃完饭后找了一下附近的咖啡厅,然而并没有找到。

  剩下的时间都在玩手机。

day1

  有半个小时试机时间,就敲了三个板子(NTT,SA,LCT),结果一个都没用到。

  开场先看A,发现是个傻逼题,10分钟切掉。

  然后看B,想了一会感觉不会做,就跳过了。

  接着发现C是傻逼题,一个小时写完+拍完。

  D也想了一会想不出来,也跳过了。

  这时候已经过了两个小时了。

  后面两个小时都在死磕B题,想过两个DP,但都过不了拍。最后写了一个\(O(n^2)\)的DP。

  出考场后问了一下B题怎么做,发现差分一下就是联赛题了。

  我退役把.jpg

  中午一直在玩手机。

  下午讲评,D是一个数学+生成函数题,感觉这种题做四个小时都做不出来。

  最终得分:100+60+100+0=260

题解

  A:傻逼题不解释

  B:差分之后就变成:有\(n\)个数,你每次可以把一个数\(+1\),同时把另一个数\(-1\),问你最少需要多少步才能让所有数\(\bmod m\)都变成零。排序+贪心就行了。

  C:如果把所有的深度(插入&询问)加上时间的话,就是一个单点修改矩形求和的题了。CDQ分治+树状数组。貌似树套树也能过。

  D:考虑缩点以后整个图会长什么样。假设有\(k\)个强连通分量,就一定存在一条长度为\(k\)的链。我们可以枚举这条链上相邻两个点的连边,那么这条边前面的连通分量连到后面的边的方向都是固定的。所以我们可以算出每一条边出现的概率,然后连通分量个数\(=\)上面的边数\(+1\)。

  实际上是枚举这条边前面的点数。
\[
ans=\sum_{i=1}^{n-1}\binom{n}{i}{(\frac{1}{2})}^{i(n-i)}
\]
  然后考虑有告诉你路径的时候要怎么做。

  对于每条路径,我们可以枚举这条边是在这条路径的哪两个点之间,这样就有一个\(O(n^2)\)的DP了。

  如果一条路径跨过了这条边,那么就会对上面那条式子有\(2\)的贡献(因为有一条边的方向确定,抵消一个\(\frac{1}{2}\))。

  所以我们可以对于一条长度为\(k\)的路径列一个生成函数:\(1x^0+2x^1+2x^2+\ldots+2x^{k-1}+1x^k\)

  设把这些生成函数乘起来后的生成函数是\(\sum_{i=0}^na_ix^i\),那么答案就是\(\sum_{i=1}^{n-1}a_i{(\frac{1}{2})}^{i(n-i)}\)

day2

  开场先看A,果然是一道最短路题(话说d2t1除了最短路&BFS还出过什么?)。不过感觉到了出题人深深的恶意,因为把莫比乌斯反演强行塞进了一道签到题。

  做完之后去看B,发现是一道套路题,可以直接二项式展开,也可以变换一下变成组合数。

  然后。。。就发现C和D一道都不会。

  在思考了半个小时后,想到了D的正解之一。很不幸的是,我找了几个看上去这个算法会错的数据把这个算法叉了,就把这个算法扔掉了。最后写了一个暴力。

   最后一个小时一直在思考第三题,突然想到可以枚举\(h\),找满足条件的\(x\)在那个区间内。接着发现数据随机,就写了一个两个\(\log\)的线段树做法。本机测了一下极限数据,跑了\(6\)秒,应该是过不了的。

  中午还是一直在玩手机。

  下午讲评前听说C大常数两个\(\log\)做法过了,觉得很不可思议。

  最终得分:100+100+100+50=350

题解

  A:求两点之间的边权可以用莫比乌斯反演,然后二分+最短路。
\[
\begin{align}
&\sum_{i=1}^n\sum_{j=1}^mi+j[\gcd(i,j)=1]\\
=&\sum_{d=1}^{\min(n,m)}d\mu(d)(\frac{n}{d}S(\frac{m}{d})+\frac{m}{d}S(\frac{n}{d}))\\
S(n)=&\sum_{i=1}^ni
\end{align}
\]
  B:可以直接二项式展开+DP,也可以推一下式子变成
\[
\sum_{i=0}^k\begin{Bmatrix}k\\i\end{Bmatrix}i!\sum_{S\subseteq V}\binom{f(S)}{i}
\]
  然后还是DP。

  后面这个做法可以优化到\(O(nk)\)

  C:可以发现求答案的过程就是在笛卡尔树上面跳,因此可以暴力维护笛卡尔树。因为数据随机,所以树高和 子树大小的期望都是\(O(\log n)\)

  D:以\(x\)为起点跑一棵最短路树。那么最小环一定只经过一条非树边。

  直接处理出每个点在\(x\)的哪棵子树内,然后枚举那条非树边。

  最短路可以用不加堆优化的dijkstra,因为是稠密图。

day3

  今天在电子阅览室考。

  开场先看A,题目说的是二维偏序,但我脑子里想的一直是三位偏序。我只会\(\log^2\)的做法,很明显会MLE,就跳过了。

  然后看B,感觉不太好做,也跳过了。

  然后发现C是个水题,就花了30分钟切掉了(我在试机的时候写过一个SA模板,直接搬过来用了)。

  做完C之后突然发现A是二偏维序,也花了30分中去写+对拍。

  接着就一直在搞B,写了个两个\(\log\)的做法,推了好久的式子+一堆细节。

  写完前三题只剩下一个小时了,就开始思考第四题,发现无法理解题目。问了评委,评委让我仔细阅读题目。

  那我也没什么办法啊。。。就一直盯着题目猜题意,过了几分钟才看懂。但是已经没时间写正解了。就写了个 暴力。

  下午发现B的后面5个点挂了,而且第一问都是错的。

  我也很绝望啊。。。明明都拍上了。。。

  UPD:问题找到了,有一个求子树内点数的地方加了一个取模。。。

  最终得分:100+50+100+20=270

  为什么出题人那么喜欢出NOIP三合一啊。。。

题解

  A:\(O(n^2)\)做法是tarjan求强连通分量。正解是用线段树优化建图。

  B:第一问就是求重心,第二问只需要求出一个点的子树内所有点到这个点的距离和,可以DP或者用其他方式搞一搞。

  C:求有多少条不同的路径就是求整个图的最大流,求答案可以二分+哈希或者把每个猴子的串排序后求第\(k\)小的相邻两个之间的LCP。

  D:先用tarjan把所有小岛找出来,再用树型DP求直径,最后用DP求分拆数(五边形数定理)。

总结

  这次比赛暴露了许多问题。

  1.在想一道题时如果往一个方向想了很久也做不出来,不妨换个思路。

  2.要积累一些常见的容易忽略的道路,如:差分,分块,二分答案等等。

  3.在想到一个做法后不要轻易地否定这个做法,一定要确保这个做法一定是错的再扔掉。如果有时间不妨实现以下,可能修改一些小的细节之后就正确了。

  4.其实第一点和第三点有一点矛盾,所以你要想规划好每道题要花多少时间去想。我给自己的时间是半个小时,想不出来/改不好就换题或换思路。

  5.写题速度不够快,第三天出现了会正解但写不完的情况。

  6.很多要取模的题可以在对拍的时候换一下模数(比如说换成特别小的模数),以检验是否有不该取模的地方加了取模,该取模的地方没有取模。

GDOI2018游记&题解的更多相关文章

  1. 「CSP-S」2019年第一届Day1游记+题解

    「CSP-S」2019年第一届Day1游记+题解 Day 1 7:30 A.M. 8:10 A.M. 8:30 A.M. T1 格雷码 题目 考场经历+思考(正解) 8:50 A.M. T2 括号树 ...

  2. GDOI2018游记

    前言 不知怎的,本蒟蒻居然拿到了GDOI参赛名额 于是乎,我稀里糊涂地跟着诸位大佬屁颠屁颠地来到了阔别已久的中山一中 腐败difficult and interesting的GDOI比赛就这样开始了. ...

  3. 2020.3.23 模拟赛游记 & 题解

    这次的模拟赛,实在是水. 数据水,\(\texttt{std}\) 水,出题人水,做题人也水.??? 游记就说一句: 水. T1 metro 弱智题. 人均 \(100pts\). #pragma G ...

  4. P5290 [十二省联考2019]春节十二响

    题目地址:P5290 [十二省联考2019]春节十二响 骗分方法 如果你实在一点思路也没有,暴力都不会打,那么请考虑一下骗分. 方法一 输出所有 \(M\) 的和. 期望得分:0分. 实际还有5分 方 ...

  5. NBL小可爱纪念赛「 第一弹 」 游记(部分题解)

    比赛链接 洛谷:禁止含有侮辱性质的比赛 . ??? 反正我觉得,gyx挺危险的 不说废话. 首先,比赛经验,前几个小时不打,跟着刷榜. 一看 T1. 发现是道水题,直接切掉了. 然后看到了 T2. 感 ...

  6. NOIP2016游记(非题解)

    去年的比赛现在来发是不是晚了. -------------------------------- Day1-白天 出发啦, 动车购票处一群丧病的又在玩售票机 动车上看到胡神打苍蝇 苍蝇打苍蝇 在车上颓 ...

  7. 「浙大ACM」图森未来杯游记一篇以及简易口胡题解

    前言 蒟蒻有参加了ACM比赛,这一次有适合HY和慕容宝宝大佬一起比的,他们好巨啊,把我带飞了. 又是窝掌机,QAQ,他们仗着自己巨,就欺负窝... 我又打了\(4\)个小时的代码,而且那个键盘太恶心了 ...

  8. CTSC2016&&APIO2016滚粗记&&酱油记&&游记<del>(持续更新)</del>

    挖一波坑 #include <cstdio> using namespace std; int main(){ puts("转载请注明出处:http://www.cnblogs. ...

  9. 2019余姚培训游记+ZJOJD2划水记

    2019余姚培训游记 突然就想写一个... 注意:以下全是胡言乱语的自high,还有很多错别字 Day 0 来的比较早,早上就到了 上午把一本小说看完了,是一个年轻作者的处女作. 我觉得我第一本书一定 ...

随机推荐

  1. ArcGIS for JavaScript学习(一)

    一  API准备 从网上下载开发包:ArcGIS for JavaScript(百度网盘地址) sdk中含有API的帮助和例子 2.离线部署(以IIS为例) 配置IIS(详见网络):解压离线包,包中的 ...

  2. ubuntu 通过apt安装jdk

    需要先添加ppa sudo add-apt-repository ppa:webupd8team/java sudo apt-get update 安装jdk8 sudo apt-get instal ...

  3. bug优先级别

    https://www.cnblogs.com/evablogs/p/6785083.html bug缺陷的优先级别 首先需要对一个版本进行冒烟测试,确定基本功能测试,如果不通过的话进行后期的测试已经 ...

  4. Delphi Record To Stream

    type TUserInfo = record sUserId,sUserName:String; iUserCount:integer; end; procedure TForm1.Button1C ...

  5. Python装饰器、内置函数之金兰契友

    装饰器:装饰器的实质就是一个闭包,而闭包又是嵌套函数的一种.所以也可以理解装饰器是一种特殊的函数.因为程序一般都遵守开放封闭原则,软件在设计初期不可能把所有情况都想到,所以一般软件都支持功能上的扩展, ...

  6. SQLServer之创建主XML索引

    创建主XML索引注意事项 若要创建主 XML 索引,请使用 CREATE INDEX (Transact-SQL) Transact-SQL DDL 语句. XML 索引不完全支持可用于非 XML 索 ...

  7. 英语口语练习系列-C22-吃东西

    基础词汇 1. bill [bɪl] n. 账单:钞票:法案:鸟嘴 Bill (人名)比尔 pay the bill 付账单 telephone bill 话费单 electricity bill 电 ...

  8. python中的struct模块的学习

    由于TCP协议中的黏包现象的发生,对于最low的办法,每次发送之前让他睡一秒,然后在发送,可是这样真的太low了,而且太占用资源了. 黏包现象只发生在tcp协议中: 1.从表面上看,黏包问题主要是因为 ...

  9. [LeeCode]14. 最长公共前缀

    题目链接:https://leetcode-cn.com/problems/longest-common-prefix/ 题目描述: 编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀 ...

  10. Html 改变原有标签属性

    内容简要: 当标签内内容 达到某以条件的时候改变当前标签属性 例如原标签为<tr> 当tr内的值符合某一条件时把<tr>变成<a>标签 例:当订单状体编程已支付的时 ...