- 二维凸包的点数在随机情况下是 \(O(\log n)\) 的。
- 树的高度在随机情况下是 \(O(\log n)\) 的。
- 要求最大值最小值的时候,有三个方向:min-max 容斥,二分,直接求。
- 条件很复杂的最优化的问题,可能需要考虑差分约束系统。
- 博弈问题的方向有:SG 函数、从结束状态推起。
- 精度题大概率是乱搞,有几个方向:泰勒展开,ln 化乘为除,随机,抽样。
- 最短路问题可以想想最短路 DAG!!你已经连续挂了两次了!!
- 多个暴力拼在一起可能会更优秀。
- 特定图的最短路问题,可以考虑分治,具体地找一条边,从这条边向左向右跑,此时最短路一定经过这条边。(ARC158E)
- 图论建模是很优秀的方向,一定要记得考虑。
- 考前记得看看板子!
对拍代码:
#include<bits/stdc++.h>
using namespace std;
int main(){
int i;
for (i=1;;i++){
printf("The result of No. %d Case is: ",i);
system("./data");
system("./std");
system("./test");
if (system("diff std.out test.out -B -w -q")){
printf("Wrong Answer\n");
return 0;
}
else printf("Accepted\n");
}
return 0;
}
记得 -B -w -q
。
- 开栈命令:
ulimit -s X
,\(X\) 为栈空间大小,单位为 KB。 - 考场上的策略:会题就写,不会先考虑部分分。