关于卡常的基本姿势和奇技♂巧

Preface

这周被两道恶心死人不偿命的无良辣鸡题目卡常卡的生不如死,一怒之下,有了这篇文章

Text

首先,如果这是一道跟实数有关的题,比如说开方。
建议将开方挪到外面,用整数运算,因为实数运算是很慢的,包括比较。
开方,log,sin是非常慢的,最好预处理或者搬到运算次数不多的地方。

其次,检查你的程序是否有大量不必要的long long运算。如果运算时会爆int而运算后还是int,最好在运算中强制转long long,运算完再转回int,因为long long 运算也是很慢的。

然后就是读入优化了,这个套板子。

C++的STL是很慢的,如果实在过不去,尽量将swap,max,min这些手打

SPFA如果被卡的欲仙欲死,请加上SLF优化

下面进入奇技♂巧篇

比如说,您的程序中有一个 mo=10^9+7
如果您将mo作为一个long long 或者是int变量来打,那么恭喜您
您的程序会变成这里写图片描述

而如果您十分(ji) (zhi)的把int mo=1000000007 换成了 #define mo 1000000007
那么您的程序就是是

。。。。。。

猜你喜欢

转载自blog.csdn.net/hzj1054689699/article/details/70338662