写点什么

NOIP 考试注意事项

作者:秋名山码民
  • 2022 年 8 月 22 日
    陕西
  • 本文字数:845 字

    阅读完需:约 3 分钟

1、注意可能会需要 long long,unsigned long long,__int128

2、__int128 输出需要手写,没有像 printf 和 cout 这样的函数支持

3、避免一些变量为函数名,比如 tm,index,time,y0,y1,yn,j0,j1,jn,hash,plus,minus

4、文件读入尽量用 #include<cstdio>或 #include<stdio.h>里的 freopen 函数

5、电脑不要改字体,否则后果自负

6、运算符之间不清楚优先级就打括号

7、尽量少函数套函数,比如 addd(addd(1,2),addd(3,5))

8、输入数据如果有 10000 到 1000000 个数,建议用 scanf,如果有 1000000 个数或以上,建议用快读

9、多组数据不要写 while(scanf("%d",&n))这种的,因为 scanf 没读成功也会返回一个非 0 数

10、64M 内如果要开一维数组,最多可开 10000000,二维最多 3000,三维 200,四维 50,如果 512M,可以多开点

11、不要把循环变量放在全局中,要在局部变量,否则如果有函数,要非常小心

12、自己没刷过几道题的算法在联赛不要用

13、能剪枝的尽量剪枝

14、如果读入量比较大,建议调试时用文件读入

15、比赛结束前 10 分钟检查文件读写没写,CPP 文件是否存对位置

16、遇到区间求值很可能会是区间 dp 的题

17、十年 OI 一场空,不开高精见祖宗!!!

18、不能用万能头,不能 O2 优化(#pragma GCC optimize(2))

19、省选、NOI 可以 O2 优化

20、联赛用 Ubuntu,需要 gdb 调试,赶紧学好

21、如果递归很多次,容易爆栈,要谨慎

22、可以估计复杂度,比如 10^9 可能需要根号或 log 级别的,如果 10^18,那么 log 才行,如果就 300 或 100,可以 O(n^3),如果数很小,可以用阶乘或幂次的了

23、如果 n 很小,可能是状压 dp

24、文件过一段时间要保存一次

25、IN 和 OUT 文件要用记事本打开

26、询问次数多时可能会要用并查集

27、注意递归容易爆栈,dfs 也容易,一定注意!!!!!!!!!!

28、return 0 一定要写

29、十年 OI 一场空,不优化 dp 见祖宗

30、共同考虑时间空间编写 3 种复杂度

31、STL 很好用,像堆,平衡树就可以用 STL,最好不要手写

32、十年 OI 一场空,不写 return 0 见祖宗

33、c 大爷要用 c++编译器

用户头像

卷不死,就往…… 2021.10.19 加入

2019NOIP退役成员,华为云享专家,阿里云专家博主,csdn博主,努力进行算法分享,有问题欢迎私聊

评论

发布
暂无评论
NOIP考试注意事项_8月月更_秋名山码民_InfoQ写作社区