- admin 的博客
 如何打比赛 (NOIP,省选,NOI,IOI或类似的)
- @ 2025-10-28 15:09:30
 
作者:刘承奥 (CommonAnts)
时间策略
1 先想所有题(40-70分钟)
1.1 逐字读完每个题,尤其注意数据范围以及每行开头结尾是否有容易忽略的信息。(可以思想验证小样例。)
1.2 每个题自由想10分钟左右。如果还没想出来,记录题目的研究对象、可能的寻找特例角度(特别是部分分)等认识。
1.3 再想想,直到时间足够或者没进展了。(具体内容参考下一节)最终,这一部分需要对每个题想出一个有效算法,(正解,或者暴力+性质)。
2 再写所有题(中间的时间)
2.1 写题顺序:先写好写(写题时间可控且有把握调试)的题(包括一些题的暴力分),再继续想没想完的题(卡住就停,改为写题),再写难写的题。
注意:代码长的题也有可能好写,极端例子是多合一提交答案。
2.2 在好写的题中,先写性价比高的做法,再写分低/代码长的做法
3 最后检查(5分钟)
计算代码的运行时间和空间:
#include <bits/stdc++.h>
using namespace std;
#define TIME 1e3 * clock() / CLOCKS_PER_SEC
bool Mst;
bool Med;
int main()
{
  fprintf(stderr, "%.3lf MB\n", (&Mst - &Med) / 1048576.0);
  cerr << TIME << " ms\n";
  return 0;
}