算法竞赛技巧

防止最后卡空格(pta,,,)

1
2
for (int i = 1; i <= n; i ++ )
cout << v[i] << " \n"[i == n];

*str = “ \n”;
解释: 当 i < n, cout << str[0]; ‘ ‘
当 i == n, cout << str[1]; ‘\n’

竞赛缓解压力及做题顺序

  • 太紧张,可以吃一些东西,口香糖什么的,可以有效缓解压力
  • 前两题较简单,看清题目,先做掉。
  • 后面的题,若看很长时间了,仍然不会,打住!想暴力,那暴力分

防卡常

  • 调用 函数库中的 clock()函数
  • clock()单位为 1e-6次方毫秒,1 clock() == 1e-6秒

例子代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
#include <ctime>

using namespace std;

int main()
{
int start = clock();
for (int i = 0; ; ++ i )
{
// clock()本身很慢,用 i%1000 == 0 来短路它避免频繁调用
if (i % 1000 == 0 && clock() - start >= 850000)
{
cout << i << endl;
break;
}
}
return 0;
}