昨天和群里的小伙伴在群里聊,有的小伙伴竟然说蓝桥杯一等奖没有含量,我也是醉了!
就像去年看了一个号主写的:研究生遍地都是!
放眼全国14亿人口,别说研究生了,本科生占比有多少?
“蓝桥杯是我人生中得到的第一个大奖,在蓝桥杯大赛备赛期间,我学到了很多知识、技术,结识了很多志同道合的朋友,也让我明白了我的兴趣和爱好是什么,我终于找到了自己的人生目标和奋斗的方向。”
最近有很多小伙伴问小孟:孟哥,蓝桥杯有必要参加吗?
其实参加能学到不少的东西!
[蓝桥杯大赛]作为国内领先的全国性IT学科赛事,连续三年入选中国高等教育学会发布的“全国普通高校学科竞赛排行榜”。每一届都吸引全国千余所高校、数万名选手参赛。
蓝桥杯适合哪些人?
01 没有学校统一组织报名的同学。与组委会老师联系确定本校无组织老师后,也可以个人参赛。
02 学校有统一组织报名,因名额有限没有被筛选上,想自己争取机会的同学。
作为计算机相关专业的大学生,或多或少都听说过,参加过,甚至不止一次参加过蓝桥杯。来自清华大学的汪乐平同学,从本科阶段以来就多次参加蓝桥杯大赛,多次获奖,最终在第十三届蓝桥杯大赛C/C++程序设计研究生组中获得国赛一等奖第一名。
随着算法应用范围越来越广,除了多次参赛的选手外,跨专业参加蓝桥杯的选手也越来越多。在第十三届蓝桥杯大赛单片机设计与开发职业院校组中获得国赛一等奖第一名的选手张凯就是一名跨专业参赛的选手代表。
张凯就读于郑州铁路职业技术学院铁道信号自动控制专业,上大学时因为种种原因并没有选择计算机专业,但是也不想完全放弃,就参加了学校的无线电协会,在老师和学长学姐们的指导和带领下学习模数电、单片机等知识。在备赛过程中,他制作了稳压电源、电子时钟、番茄闹钟等相关科技创新作品,并且把历年来所有的省赛、国赛题全部都做了一遍,最终获得了国赛一等奖第一名。
参加蓝桥杯的选手既是为自己而战,也是为母校的荣誉而战。在浙江机电职业技术学院就读的陈彦匡“幸运”的碰到了良师益友,“幸运”的加入程序设计竞赛大家庭,在老师和教练的带领下,他从缺乏自信,变得“自信强大”,逐渐萌生并实现了一个又一个梦想。
“念念不忘,必有回响”,在第十三届蓝桥杯大赛中,陈彦匡不但收获了自己的Java软件开发大学C组中一等奖第一名,同时实现了母校浙江机电职业技术学院在蓝桥杯大赛Java软件开发大学C组上的三连冠。
如果在大学里注定要参加一次蓝桥杯,不如就现在吧。第十四届蓝桥杯大赛个人报名通道在12月19日-12月30日期间限时开放。抓住最后的机会,所有的努力都是为了在更高的赛场上,遇到更强的对手。
03 参赛经验
首先如果想冲奖的话,一个好的队伍是很有必要的,找队友并不建议一定按建模手,编程手,论文手分配,在我看来数学建模知识之间关联性是很大的,每个人只负责自己的部分最后的结果只能是对对方的工作无法理解。
建议至少两个人对模型与编程都有了解,这样才能互相合作交流。
然后是数学建模知识准备方面,我建议初学者首先要做的是去了解各种常用模型能解决什么样的问题,然后学习模型如何应用,初始阶段不需要学习模型的原理推导,具体原理在比赛时也足够时间学习描述了。
我本人还学习了机器学习,数据分析相关的内容,即便在以后的发展看来,学习这些内容也是很有意义的,达成了我想在大学期间多学一些知识的目的。因此很建议大家也去学一学机器学习。
本人学习的资料有机器学习方面的吴恩达机器学习,统计学习方法,以及其他网路上的帖子,这部分我本人学习的比较杂,没有成一个很好的体系大家仅供参考就好,数据分析方面主要需要熟练掌握python的numpy和pandas库的使用方法,多做一些实例练习。
关于比赛期间的经验,我参加的比赛都会熬夜,但不建议第一天就开始通宵,前期要保存一些精力,合理分配时间。还是要抽出时间吃饭,其他时间的话如果不是很有信心建议不要干别的事情,我们为了国赛还集体翘了六级考试,如果当时一起去考了的话,按时间来说就无法完成论文了。
总之,一次参赛终生受用!
04 蓝桥杯刷题
刷题的顺序应该从基础到复杂。
第一题,以下函数的功能是将任意整数进行因式分解, 请完成该程序的空缺使函数能够正常运算
void f(int n)
{ for(int i=2; i<n/2; i++)
{ //———–(1)———— { printf(“%d “, i); n = n / i; } }
if(n>1) printf(“%d\n”, n); }
第二题,以下函数的功能是将给定字符串进行倒序输出, 请完成该函数空缺部分。
char* p = “abcdef”;
char* q = (char*)malloc(strlen(p)+1);
for(int i=0, int len=strlen(p);
i<len-1; i++) q__1__ = p[i+1];
q[len-1] = p[0]; —–(2)—-; printf(“%s\n”, q);
第三题,
(这题的题目到底是要干啥,本人到现在沿未明了,数学学统计好, 但可以确定原题给出的代码就是如此)
int f(int m, int n) { int a = 1; int m1 = m; //—–(3)—a *= m1–-; int b = 1; while(n>1) b *= n–-; return a / b; }
第四题,任意给出一个四位数, 把它重新组成一个四位的最大数和一个最小数, 算出两者间的差。
例如:3721 这个数,可以重组成:7321 和 1237,相数之差为 7321-1237 请完善下面这个函数,以实现此功能
int f(int n) { int N[4]; for(int i=0; i<4; i++) { N[3-i] = n % 10;
—-(4)—} for(i=0; i<3; i++) for(int j=0; j<3-i; j++) if(N[j]>N[j+1])
{ int t = N[j+1]; N[j+1] = N[j]; N[j] = t; }
int n_min=0; for(i=0; i<4; i++) n_min = n_min * 10 + N[i] ;
int n_max = 0;
for(i=3; i>=0; i–) n_max = n_max * 10 + N[i];
return n_max-n_min; }
大学期间,上课学到的东西有限,不如参加不参加比赛学的东西多。
大家想刷蓝桥杯题的话,我整理了很多,可以在下面回复:蓝桥杯