2022.7.12 thecold 讲课纪要

前言

上午刚学完平衡树,听学长说下午讲 \(LCT\) ,想了想就我这种蒟蒻平衡树还写不明白就搞 \(LCT\) ,绝对会挂,就打算下午去初中集训班摸摸鱼。

一进去就看见了 thecold 学长,真的好帅啊!!!

后来就开始自我介绍,才知道是一个当年铜牌的巨佬,因为一个小失误遗憾退役。后来也给我们讲了,说他开 unordered_map 给炸了,,,,,

正文

这节课是讲深搜和数据结构,上次学深搜(显然不是thecold讲的)就让做了几个橙题,差评!讲数据结构也是橙题黄题,差评!

thecold 上来就说:"我们来复习一下剪枝"

其他初中选手:“我们学过吗??”

thecold:“我们来看到P1120 小木棍这个题,大家想想怎么剪枝”

突然感觉来的挺值得,这下摸不了鱼了。二话不说赶紧开始想怎么剪枝。后来第一次75,调了调过了。本来是想听听 thecold 讲怎么剪枝的,人家刚把五条列出来,就有傻逼开始哔哔,说什么你那个剪枝重了。他厉害,吊打国赛选手。有这种人严重影响听课质量,就只能自己去写了。

  • 剪枝1:只搜索可以被 sum 整除的长度
  • 剪枝2:按长度从大到小处理每根木棍
  • 剪枝3:木棍的区别只在长度,所以只用木棍a搜索失败后所有同长度木棍可以跳过
  • 剪枝4:当前待拼木棍长度为原长且搜索失败可直接退出
  • 剪枝5:当前待拼木棍长度等于当前剩余未拼长度且失败

后来 thecold 又开始讲 IDA* ,刚好这块好久没复习了。

但他给一群没学过启发式,没学过迭代加深的讲这玩意儿???

后来就让做例题P2324 [SCOI2005]骑士精神,很久以前学完 IDA* 的时候就想写这个了,但当时自己比较菜,只能做做简单的,当时学的时候估价函数都写不明白。

后来经过n次WA,终于过了。

这个题重点在于估价函数是遍历所有棋子,只要本棋子不在目标位置则将估计步数自增;

然后又讲折半搜索。给了例题P2962 [USACO09NOV]Lights G

看到之后没什么思路,就用高斯消元先处理好再搜索水过的。后来没有什么大思路,thecold 学长的过程如下:

把点分为两个部分——前 n/2 和 后 n/2 ,对于每部分,我们都可以暴力做一遍,之后对于前一半搜索出来的状态,我们可以找到唯一对应的后一半的状态,合并一下更新最优解就好

嗯,之后就回复正常了,讲了几个黄题绿题的栈,队列。

刚以为回复正常,一道CF来了。。。。

thecold:“我们来看CF797F Mice and Holes.”

一眼想到的是暴力dp,后来想起来这节课讲的是队列,就单调队列优化一下,就可以过了。

后来他还想讲CF407E,发现他们都不会线段树,就跳了。

后来找学长交流了一会,就走了。

posted @ 2022-07-16 17:28  PassName  阅读(47)  评论(0编辑  收藏  举报