复杂度正确却得到TLE?
查看原帖
复杂度正确却得到TLE?
617078
zhouyuxuan3501楼主2024/7/24 16:53

(1)取模很耗时间,尽量减少取模次数,比如类似分治思想,运用结合律分步计算。例如

a⋅bmod  M⋅cmod  M⋅dmod  M=(a⋅bmod  M)(c⋅dmod  M)mod  Ma·b\mod M·c\mod M·d\mod M=(a·b\mod M)(c·d\mod M)\mod M

(2)重复计算的部分开数组保留下来。

(3)试着将c++14换成c++20?运用第(1)(2)条后,c++14跑了3600ms,c++20只跑了1000多ms。震惊。

2024/7/24 16:53
加载中...