您的位置:首页 > 其它

8.13做题感悟

2017-08-13 18:39 211 查看
感觉我们都被zrl吓到了……

回家好好想题,感觉最后一题还是不会

然而问了下gj,他第一句话就问我今天做题做得爽不爽……

T1

看上去比较难,然而一堆if就搞定了……

方法我就不说了,反正在当时看来是玄学的算法……

具体证明我还不是特别会……有些大佬会的话下面直接评论

然而我一开始还在拼命地想TlogN的算法……

但光看数据的话这似乎是可以的,没想到std说把数据放宽了……

T2

其实这道题想到了就不难了

我们可以想到,在一个连通块里,解是唯一的

因为在连通块中你知道至少n-1个关系(n为此连通块大小)

所以你就可以知道其他任意两组的关系

肯定不会出现存在三个都冲突的情况

所以可以用并查集来维护连通块,顺便记录一下它和它父亲是什么关系

当然二分图染色也可以

如果用并查集的话,那么要将吻合设为0,冲突设为1

判断的时候用异或就可以了(具体自己推推就出来了)

知道了连通块个数就很简单了(具体我不说了)

基本真正做过关押罪犯这道题的人应该都会写……

没做过的话自己去做做这道题,算法基本就是一样的

T3

两个线段树来维护我听懂了

有一步不是特别懂

我怎么在logN的时间里求出某一个点能到哪些点……

可能这个会了这题就会写了

但我也是第一次写这种两个线段树搞的东西……

等会了我再把这东西更新一下吧

小插曲:

最后一题不会,去问gj,他说他很忙

去问出题人,他说他要上课,明天回我……

一脸懵逼 看来不能好好学习了

总结

有些时候多做做题也是好的

比赛的时候要大胆猜测(比如第一题的玄学算法,尽管不会证,但是跑了一堆数据是对了,就默认它对了)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: