UOJ Logo

NOI.AC

NOIp考前注意事项

2018-11-09 16:26:20 By hkxadpall

注意事项

  1. 携带身份证(户口本、护照等)和学生证或学校证明(须贴照片,学校盖骑缝)。
  2. 请认真阅读考生须知,不要犯低级错误。
  3. 可以带点水、干粮。
  4. 考前好好休息,注意身体

常见错误

  1. 在所有硬盘分区中,D 盘不保护,其他分区保护;
  2. 文件操作要打对,最后上交的时候检查一下有没有写文件操作
  3. 文件夹要建对;
  4. 文件夹名、程序名要打对;
  5. 注意空间限制、时间限制;
  6. 注意 100kb;
  7. 调试信息要删掉;
  8. struct 里面不能初始化变量或数组!(不能直接赋值,要写函数)解释如下: 捕获.PNG
  9. j0 j1 jn y0 y1 yn time 这些标识符不能作为全局变量名!math.h/time.h/bits/stdc++.h 库里面有!
  10. 头文件 #include 中的 ‘/’方向不能弄错!
  11. 使用 freopen 需要包含 stdio.h, cstdio 或 bits/stdc++.h 中的一个
  12. 看题目时不能着急,尽量一字一字地看完,题意一定要仔细阅读;
  13. OI 选手常见作死错误列表 点击查看 0.jpg

千叮万嘱

  1. 比赛前一天晚上请准备好你的各种证件,事先查好去往考场的路线
  2. 比赛之前请先调整你的屏幕分辨率到你喜欢的大小
  3. 比赛之前请把编译器的字体调为你平时惯用的字体,尤其是注意这种字体中的逗号&点, 1&l 这种易混淆的字是不是区分明显
  4. 在不影响视野的情况下,请将字号尽可能调大,方便查错
  5. 请将题目通读完以后,再开始深入思考你认为最容易的一道题
  6. 即使这道题再容易,也不要着急写代码,请先明确自己每一步要干什么后,再开始写,轻敌会是你最大的错误。
  7. 即使这道题看起来再没法做,也不要提早放弃,这个时候纸和笔会是你最好的朋友,自己尝试几个例子,也许你就会找到答案
  8. 请一定先明确自己要干什么之后再写程序,不要走一步想一步
  9. 如果这是一道动态规划题,请先把转移方程写在纸上再编程
  10. 涉及到边界处理、加一减一之类的问题,请在纸上举个例子,标上下标以后,在编程时 参照纸上的下标写
  11. 如果思考 30 分钟仍一头雾水,没有可以实现的算法,请你果断屏蔽掉 100%的那一栏数据,开始写 60%,50% 乃至 30%的算法——在 NOIP 里面,30 分绝不是小数目
  12. 几个常用的复杂度参考:
    • 10 以下——n
    • 10 到 20 —— 3^n
    • 10 到 25——2^n
    • 30 到 50 2^(n/2)(折半搜索)
    • 100 以下——可能是深搜
    • 100 到 500——N^3
    • 1000 到 5000——N^2
    • 100000 到 500000——NlogN
    • 500000 以上——N 或 log N 或 1 ;
  13. 如果你发现你旁边的人写得很快,请你放心,他的算法十有八九是错的
  14. 虽然 1s+128MB 内存 (这是以前的了,现在应该是 1s + 256MB) 是标准配置,不过也不是每道题都是这样的,还是请认真阅读试卷首页的试题说明
  15. 计算内存的方法:数组大小*类型长度/1000/1000=所占内存 MB 数,int(Pascal:longint) 类型长度是 4, long long (Pascal: int64) =8 。记不住的话,记住 int (Pascal: longint) 型数组在 128MB 内存下最大开到 2500 0000 是比较保险的(占 100MB 内存)
  16. 写完程序之后,请一定不要忙着编译,请一定要将你的代码从头到尾通读一遍,也就是 静态查错,这是整个编程过程中最重要的步骤,有的变量重复调用问题调试的话,一个小时 也看不出来,静态查错可以一下指出错误
  17. 静态查错请注意以下方面
    • 是否写上了 using namespace std? (这是 C++ 的,Pascal 就不用了)
    • 数组开得是否够大?
    • 变量类型是否正确?
    • memset 时, 所填的 sizeof(XX)的 XX 是不是匹配?大小是不是正确? (Pascal 是 fillchar)
    • 外层循环与内层循环的 i,j 是不是混用了?
    • 循环之前,i,j 是否定义了?
    • 输入 数据都输入了吗?
    • 这个程序是在执行你想让它执行的步骤吗?
    • 变量是否重名
  18. 通过样例后,请你一定不要放松警惕,因为样例并不能覆盖所有的情况,请自己设计对拍程序
  19. 如果出现问题,请你调试你的程序,请一定要分模块调试,不要从头跟到尾
  20. 如果你已经设计不出能卡住你的程序的数据,恭喜你可以做下一题了
  21. 为了万无一失,请你用 return 0 结束你的程序 ( 同样 , 针对 C/C++ ,建议是必须 加上 )
  22. 在内存允许的情况下,能开普通队列就不要用循环队列,能开下普通数组就不要用滚动数组
  23. 在时间允许的情况下,能暴力就暴力
  24. 总之,在不超限制的前提下,能不优化就不优化,以减少代码量和出错概率为第一原则
  25. 当比赛还剩下 5~15 分钟的时候,请不要再改动你的程序,即使你怀疑它对你的一个输入 给出了错误答案,因为你自己算出的结果也有可能是错的
  26. 这个时候请你检查是否注释掉了该注释掉的东西,文件名是否写对,文件夹是否建对, 请一定反复检查!
  27. 其他:比赛秘笈

OI 歌曲

2018-11-07 11:04:11 By hkxadpall
hkxadpall Avatar