蓝桥杯的比赛流程和比赛内容大概是什么?需要怎么准备?只刷Leecode的题目可以吗?

您所在的位置:网站首页 asl12比赛 蓝桥杯的比赛流程和比赛内容大概是什么?需要怎么准备?只刷Leecode的题目可以吗?

蓝桥杯的比赛流程和比赛内容大概是什么?需要怎么准备?只刷Leecode的题目可以吗?

2023-03-13 04:13| 来源: 网络整理| 查看: 265

自己参加过两次蓝桥杯B组,都进国赛,对蓝桥杯有些了解。

蓝桥杯简介比赛流程

蓝桥杯比赛全程4小时,往年是上午9点到13点。

试题形式

题目分为结果填空题和程序设计大题,共10题,大致各占50%,填空题只需要填最后答案,程序设计要求提交完整程序,比赛过程中提交不判断对错,比赛结束后才判题,所以以最后一次提交为准。

对于结果填空题,题目保证只有唯一解,选手的结果只有和解完全相同才得分。对于编程大题,会使用多组评测数据来评判,每组评测数据有对应的分数,按照通过的评测数据评分。

比赛准备

准备的话(以C++为例),首先是学习编程语言基本语法

运算,包括逻辑运算和算术运算。条件表达式if, else条件判断。数组,诸如数组定义的合适长度,边界细节,下标是从0开始还是从1开始等。字符串,掌握字符串的删除,拼接,字符查找等,Java,C/C++,Python都封装了很多字符串的基本操作,学会使用即可。循环,学会循环的开始和终结的判断,一般使用比较多的就是 forwhile函数,明白函数的返回类型和参数传递

其次,学习基础算法,数据结构和数学知识

排序,这个在比赛中直接使用 sort() 就可以了,还要掌握结构体排序二分查找,也叫折半查找,在编程比赛经常会遇到。贪心算法,贪心算法一般就是找到最优解的方法,比较灵活。DFS和BFS,图形搜索算法,都是经常使用的。Dijkstra, 最短路径算法。动态规划,简称DP,DP题目难在公式的推导,可以先学习基础的背包问题计算几何,一般涉及较少。,二叉树的前、中、后序遍历,树状数组,最小生成树(Kruskal)。栈和队列,在比赛中一般使用STL 封装好的容器来实现栈和队列,另外,map,set,vector,pair 都是经常使用的。简单数学,最大公约数,最小公倍数,素数的筛选,三角形公式,等差数列等

在学习的过程中一定要刷题,一方面加强知识的理解,另一方面提高自己的代码能力(速度,Debug)。

技巧策略

比赛中,编程知识的是一部分,技巧策略也是一部分。

暴力, 暴力看似简单直接,但也要考虑条件。在填空中遇到不会的题,可以考虑暴力,但是一定要考虑时间复杂度,遇到 1e^8 和 1e^9 的时间复杂度,可以大胆暴力,如果是 10^{100} 的数量级,程序运行到比赛结束也算不出结果。在编程大题中,如果找不到最优解,可以使用暴力得一部分分数,因为编程大题中的测试数据有些数据比较小。构造测试数据。比赛中,通过题目中公布的测试数据不代表全部正确,一定要自己构造多组数据和特殊的数据来验证编程的正确性。学会放弃题目太难,就要学会放弃,不要头铁。刷题网站的选择

自己本人在LeetCode刷了120道。

不建议刷Leetcode, Leetcode大多是涉及数据结构和一些基础算法的的,比如动态规划,链表,树,栈,队列等,而蓝桥杯的题目涉及范围是比较广的,从简单的水题到一些需要使用复杂数据结构和算法的大型题目都有。而且,Leetcode写题是不用自己输入的,只需要把一个函数补充完整即可,与蓝桥杯自己输入还是不同的,会使人有些不适应。刷题的话可以去蓝桥杯的练习系统,ACWing。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3