尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

一些导致 WA/MLE/TLE 的坑点

一些导致 WA/MLE/TLE 的坑点 本文会持续更新以下题号均为洛谷题号1.轻易不要调用函数和函数会丢精度。计算幂的时候如果指数小可以直接写循环或者多打几遍底数否则还是老老实实写快速幂吧。除法上取整写比好不会出现奇奇怪怪的精度问题。比如 P1351我用连样例都过不了或者说我太菜了(num2 w[e[j].v] * w[e[j].v]) % mod; // (num2 pow(w[e[j].v],2)) % mod;这行代码(pow)会导致精度问题慎用2.建图时如果节点很多比如N为点数而内存限制为时不要用存图会MLE。比如 P2403我用就 MLE 过不了用链式前向星直接 AC 。upd似乎 vector reserve 一下会有优化struct graph{ int head[MAX],tot; struct edge{ int v,nxt; }e[MAX]; inline void add(int u,int v){ e[tot] (edge){v,head[u]}; head[u] tot; } }g,f;//链式前向星vector int g[MAX],f[MAX];3.类型不能用scanf(%d,b);输入本人 P4782 因为这个被硬控了4次爆零。4.如果你关了流请不要用快写输出会至少在洛谷评测机上无法输出inline void write(ll x){ if(x / 10) write(x / 10); putchar((x % 10 0)); } …… ios::sync_with_stdio(false); cin.tie(0),cout.tie(0);本人因此 P5283 三次爆零5.唐诗错误(1) 不要在点双之间连边恐怕只有我一个人会这么唐P3225可以在强连通分量、边双之间连边点双只能统计割点(2) 在边双之间连边时注意不要建双向边跑完出环了…… 例如P27836.不要这样写a[tot].pos a[tot-1].pos 1,a[tot].d -1;本地运行或许没问题一旦提交全WA。因为的值可能会出现问题。改完后 P2352 WAAC7.如果你习惯使用#define db long double像我一样那么不要db f[N]; memset(f,127,sizeof(f));会 memset 成一个垃圾值还是手动赋 inf 比较保险8. ceil 函数的返回值不是 int是 double所以如果需要输出一个浮点数上取整的话输出 (int)ceil(x) 或者 (int)(x0.5) 会更好9. 这个死法是真的太唐了我们写if(getk(s,2e9) ! getk(t,2e9))的时候大概是默认前一个 getk 先运行的但是我在做 P1852 的时候它是反着运行的而我的变量赋值依赖函数运行顺序所以还是不依赖这个比较好
返回列表