如何优雅地控制蓝桥杯的分数?
视频讲解:https://www.bilibili.com/video/BV1P34y1x75N/
一、填空题
对于填空题而言我们不一定需要写代码,我们可以使用 计算器
、日历
、Excel
、word
、python
等待其他工具完成,如果我们想写代码,那么我们不需要写一个积极的解决方案或非常低复杂的代码,我们只需要这个代码可以完成游戏,也就是说,复杂性可以是 1 0 10 10^{10} 1010 在内部,很多暴力行为都可以派上用场。退一步说,如果你真的做不到填空题,你可以用它 有时这也是一个不错的选择
二、编程题
2.1 return 0;
2.2 写代码的习惯
个人建议,
第一次看完题,无论如何, ,然后将暴力代码包装成一个slove()
函数,然后写下所有主题的暴力代码,我们开始思考正解代码,暴力代码的好处来了:
- 首先,我们确保我们获得了每个主题的暴力分数
- 其次,当我们写正解代码时,我们可以用它来拍摄数据,以防止正解代码甚至没有暴力代码的分数
- 我们的
main
函数的整体逻辑不会混淆
其实这种编程方法就是写作 就如同 leetcode
的题目一样
2.3 多写多画
当我们分析主题时,我们必须在纸上或电脑的画板上写更多,讨论主题点,这对主题的分析非常有帮助。如果我们只是在脑海中思考,很容易想到或错误!
2.4 对拍数据
当我们测试编写的程序时,我们不能只测试样本给出的,而是测试一些极限数据,如,否则你的代码可能只能过这道题目的样例,最后还是
2.5 其他
-
建议将一些变量、数组、标记等定义为全球,以避免初始化,因为在全球变量中,系统自动初始化为0,否则会导致程序长时间找不到问题。
-
不要把
cin
和scanf
建议使用等混用C语言
输入输出不仅速度快,而且调试方便 -
查看数据范围,感觉超过了 1 0 9 10^9 109 请务必使用
long long
为了防止数据溢出,许多学生编写正确的代码,但数据溢出只能得到一小部分,所以不开long long见祖宗
-
关于万能头
#include <bits/stdc .h>
,这只会增加编译时间,而不会增加评估时间,因此不会影响代码的运行速度,但我认为少使用通用头,除非你记得非常熟悉头文件
三、IDE及环境
因为比赛用的 IDE
是Devcpp 5.4.0
提前熟悉这个版本 IDE
并设置基本操作 IDE
肯定会让我们在比赛中变得更加
首先是关于调试的:一般来说, IDE
调试需要自己打开:
-
工具->编译选项->代码生成/优化->代码生成->优化级别 :设置为
low
-
工具->编译选项->代码生成/优化->代码生成->语言标准 :设置为
GNU C 11
-
工具->编译选项->代码生成/优化->连接器->产生调试信息 :设置为
Yes
和IDE还有一个配套设施 API
一般来说,手册是鸡肋,因为会的人不需要看,不会的人不知道看哪里。其实这个API
我们可以关注两个地方:
- STL部分,比如迭代器是如何书写的,还有容器有哪些函数可以调用
- C Strings 这个库可能会使用一些实用的函数
其实平时要熟悉 STL
常用容器和 #include <algorithm>
常用函数的头文件 这里推荐题单(有配套视频和讲解):
http://acm.mangata.ltd/training/61cff0d9aa36161f3c11f143
四、临近比赛
-
上午调整作息时间,比赛
9:00-13:00
整个时间为4h,对于一些经常熬夜起床的困难家庭来说,提前调整工作和休息,给正式比赛留下充足的精力是非常重要的 -
减少月经量喝水,比赛时少上厕所
-
保持良好的心态,每天做几道题(不要做难题),保持手感,提高自信心
-
吃好喝好(
最后,附上蓝桥杯真题单:
http://acm.mangata.ltd/training/61d07ff9aa36161f3c122f0f