关于这个题,我分享一下我的反TLE经验

P3806 【模板】点分治 1

传奇英雄 @ 2020-05-19 11:05:18

这个题不卡常。卡常不是出题人的锅。(总不能题做不出来就骂出题人吧。。在此感谢出题人的卡常使我发现了代码的错误)

不要用memset,否则直接T飞

注意检查重心有没有写挂。

改代码改到崩溃的时候,我突然发现第9组TLE的数据非常不对劲,达到了6.9MB,但是其他的大数据却只有1MB左右。于是我怀疑我的dfs深度过深,结果发现果然如此。有一个地方写错了导致dfs会很深。

所以通过观察代码运行空间也可以对TLE问题起到帮助

还有就是重心的问题,可以找一组大数据,找个std,打个表,输出每次dfs的重心。如果重心不一样,那么可能就是挂了。。(当然也不一定,因为重心可能有多个。)


by 传奇英雄 @ 2020-05-19 11:06:23

https://www.luogu.com.cn/record/33716461

A题记录,跑的飞快,一点也不卡常。


by 传奇英雄 @ 2020-05-19 11:07:48

改代码要有耐心,千万不要急躁。(说的容易做的难)


by Miller2019 @ 2020-05-19 11:15:03

IEE


by Implicit @ 2020-05-19 11:24:43


by bovine__kebi @ 2020-05-19 11:34:58

qpee


by Froggy @ 2020-05-19 11:59:30

qpee


by zhoukangyang @ 2020-06-09 21:30:00

Froggy!!!


by wlzhouzhuan @ 2020-07-19 23:06:58

thx


by 笑天真 @ 2020-11-04 11:59:13

重心写错太真实了 如何看待我把重心找出来,然后不管重心直接把子节点放进去递归的操作


|