第十三届蓝桥杯 个人经历回顾及经验总结_蓝桥杯教室有摄像头吗-程序员宅基地

技术标签: 蓝桥  蓝桥杯  

️️说在前面

怎么说吧,这次比赛还是以遗憾而告终,即使已经做好了充足的准备,可依然会有许多意想不到的事情会发生…

️️比赛过后我难过了很久,反思了很久,慢慢的我也调整好自己的心态,我知道现在能做的就是吸取经验教训,不能让类似的情况再次发生。
在这里插入图片描述
人生多少带点遗憾

个人经历在下半部分

️️赛前回顾

在这里插入图片描述
【刷题】 从一月末开始我刷题的强度就明显的上升了,起初在力扣上刷题为主。就我而言,我觉得力扣上出的那些题目并不是要求你解决某些实际问题,而更倾向于是要求你掌握各种算法模型原理。当然,要解决各类实际应用的问题还得通过这些算法模型来解决,应对问题的难处就在于你能否想到、能否运用这些模型。力扣上一些经典的模型是一定要掌握的,如子集,全排列,N皇后,pow快速幂,LCS最长公共子序列,LIS最长递增子序列,编辑距离,分割等和子集等等都是一定掌握。力扣上能想到的,比较有印象的暂时就是上面那几种,还有其他更多经典算法由你来发现
如果你刚开始接触力扣的话可以从两数之和开始,慢慢了解如何使用哈希表去优化它,记得我刚开始用力扣的时候编译了两三天都不能通过,完全不知道他里面的流程是怎么样的,如果你像我一样的话,那不用灰心。下面这张图片有大概的使用方法
在这里插入图片描述
如果你已经掌握了一些方法之后可以参加力扣周赛,锻炼一下做题速度和准确率。每场周赛题难度都是从低到高的,难的有难的,简单当然也有简单的,所以不要像我一开始一样听到周赛就觉得与我无关。其实周赛离我们并不遥远,只要勇敢的迈出那一步

在这里插入图片描述在这里插入图片描述
【刷题】 当做过些蓝桥杯历年的试题你会发现无论在题型上,格式上以及调试上都会与力扣有很大的区别,蓝桥杯就是给你一个问题和一个非常基础的评测样例让你设计代码解决该问题,而这期间你不知道你的代码正确与否,很多情况都需要自己去考虑,有必要的话需要自己设计样例调试,得分也是按点给分,一般会给出5、8、10个样例不等,每通过一个样例会得到一部分分。 那么这里我就推荐另外两个OJ网站:洛谷AcWing.这两个都是非常棒的刷题网站,洛谷的题型风格可以说跟蓝桥杯题型风格一模一样,按样例给分,如果某个样例解答错误了,可以下载第一个评测样例对照结果,评测样例也是5 ~ 10个,样例下载次数会有限制。而AcWing也差不多,但有点像力扣风格支持自定义输入样例,提交后如有错误会立马反馈第一个错误的样例。这说的是调试风格有点像力扣,题型的话跟蓝桥杯也是一样的“解决问题型”。
刚开始刷题建议还是先从力扣开始,慢慢的有点熟练度、掌握一些模板之后在来这两个网站解决更多问题,了解更多模板。

【抱团】 不管是学习还是刷题,往往一群人一起干效率会更高些。有氛围,有对比才能更好的激励自己。考前一个月,执梗杨枝他们组织了一个训练群我也加入了,每天提供3-5道省题或国赛题给我们练习并督促打卡,感觉挺好的,那一个月我也学到了很多,在那里确确实实可以见证一个人的实力和一个人的成长,有几个兄弟进步真的嗖嗖的快,属实佩服。所以我建议,如果你想更好更快的提升自己,最好就能够一起学习。
如果你对算法感兴趣可以进入这个社区https://bbs.csdn.net/forums/Suanfa?category=0与众多算法爱好者一起进步一起努力。

【阅读】 没有阅读算法书籍是我的一处遗憾。每个问题都有他们对应的解决方案。而每一种解决方案的往往可以解决很多同类问题,因此了解每一类问题的解决方案是非常必要的。这里的问题就在于如果你第一次遇到某一类问题的话是很难能够想到解决方案的,竞赛上能做出来的那些题目往往都是你做过一些类似的题型才能想出来。 所以,如果要在竞赛上拿到更多的分数就必须积累够多的题量或者就是阅读算法书籍与刷题相结合的进行。这里我强烈建议大家能够阅读些算法书籍,因为每一本算法书籍都是前辈的结晶,句句都是经典,里面会总结大量的题型以及提供对应的问题模板。

我有两本电子书我觉得都是非常不错的。一本是:挑战程序设计竞赛,用C++编写的代码,里面覆盖了超多的超全面的算法知识点和真题,我比较推荐这本。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
另外一本是算法图解,用python语言编写的。每一个知识点都以漫画的形式展现给我们,非常容易理解。会有一些解决方案没有上一本书那么细致。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述这两本电子书我都有,懂我意思吗?

【真题】 刷真题是备战中必不可少的一部分,大概考前一个半月到一个月这样就要开始了,真题的话蓝桥官网或者蓝桥云课上面有。遇到不懂的地方想了很久没有想出来就看看大佬们的思路,可以去B站上看看视频讲解或者AcWing、C语言网以及上面的社区等都是收录了蓝桥杯试题的,那里一般都会有真题题解。
每天都要刷至少三道真道题保持题感。经常刷到难题并且做不出来的话,信心和状态一定会大大折扣的,但是不要灰心,刷刷一些比较简单的或者刷之前刷过的题,等有感觉了之后再回来,如果还是没搞懂就看看题解。

【路线】 如果你想稳进省一的话花四个月左右的时间准备一定没有问题。我建议的大致路线是这样子的:
(第一个月)阅读书籍为主,刷题为辅 -> (第二三四月)刷题为主,阅读为辅。先力扣开始,有点感觉了之后就去洛谷AcWing,慢慢地也可以开始刷真题,期间总结每种题型的解题技巧,最好在博客上记录一些比较经典的问题。每过一段时间就要回顾一下。最后一个月就以真题为主,填空编程都要做,省赛国赛题也要做。填空真题蓝桥云课上面有。最后一周就慢慢整理以前学过的知识模板了,记得一定要调整好心态。

【模板】 每解决一类问题可以总结出一些模板,下次遇到同类问题可以直接套用。我建议这些知识点都要掌握:BFS,DFS,DFS回溯,DFS动态规划,DP动态规划,剪枝,01背包,完全背包,多重背包,分组背包,并查集,种类并查集,二分,哈希,贪心,哈夫曼树,优先队列,双指针,滑动窗口,快速幂,Floyd,余数定理,gcd,lcm,唯一分解定理–求质数求约数,三角数前n项和公式,公比为2的等比数列前n项和公式,前缀和,差分,单调栈,布什博弈,威左夫博弈,(反)尼姆博弈,最长递增子序列,最长公共子序列,编辑距离,分割等和子集等,除此之外建议掌握datetime模块用于快速解决时间问题以及collections模块中的deque双向队列,用于优化BFS;建议了解常用数据类型list,set,dict处理数据的效率等。当然如果想拿个好成绩掌握的远远不能够只有这些,我暂时就想到这些,平时自己用的大概也差不多了。

【知识量】 如果我们以自身对各个知识点的总理解熟练度为纵纵坐标,时间为横坐标的话,我感觉我的状态就跟下面这张图一样,起起落落的,很难受。
在这里插入图片描述
如果你感觉跟我这样差不多,那你不要气馁,因为你不是一个人。所以我们只有不断的学习新知识点,并不断的巩固旧知识点才能把熟练度给提上去。

【赛前一星期】 比赛前一个星期我已经焦虑的不行,睡也睡不好,别说考前了,就连昨晚也没睡好,即使很累,但就是睡不着…一想到还差5-7分钟就能做出来的倒数第二题就莫名的难受,太可惜了,那题就差得出一个最大差值就完事了,哎…到嘴的25分飞了…
考前最后三天我把自己积累的要注意的知识点过一下刷对应的题,那三天我刷新题每天就1~2道,都是刷省赛的没有刷国赛的题。

️️赛中

这部分主要说我个人经历

我八点吃了早餐到了教室,因为八点半就要入场了,所以要提前准备一下。我怕考试突发肚子痛,我连续去了两次WC生怕出现任何一点意外。考试前一天我也特地把电宝,数据线,支架那些带去教室。
之后跟并肩作战许久的小郑相互打气后就入场了。
这届比赛很蛋疼的地方就是线上考试。8.30分后,我把手机电脑微信强制关闭,然后把电脑中一切与考试有关的文件都按照规定隐藏掉。手机进入腾讯会议,放在身体斜后方监控屏幕和我们的举动,电脑登录考试系统。因为电脑也要全程联网,而我在教室没有wifi,所以自己开了热点。担心手机会没电,也担心手机过烫我用数据线接在充电宝的1A上给手机充电,看到电宝充电灯一闪一闪后,我就安心的回过头去敲代码了。可是可是!戏剧性的一幕发生了太难过了…待我娓娓道来…

9点正式开考。那个考试系统很不好,看一次PDF就说我切屏一次,用一次编辑器就说我切屏一次,刚开始我被吓到了,我以为要用啥规定的软件才行,结果就是系统的问题,我觉得那个考试系统应该适用一个纯笔试的考试系统,蓝桥杯用这个系统太怪了,要知道蓝桥杯是支持使用excel,word,计算器等软件的,而且不用编辑器怎么敲代码怎么调试代码?吐槽完后正式进入考试了。我大致浏览了一遍题目,看到后面三道题我感觉我应该就能拿下的了,于是我就先做前面的。第一三是题签到题,
在这里插入图片描述
第二题我能想到的就是%2是1说明是奇数,然后它%11跟%17都是0说明是他们的倍数,然后再用if就行了,但是调了一会也没有调出来,就先放弃了。
在这里插入图片描述
第四题最先想到的就是暴力,从1到n枚举每一项看他们的和是多少但这样的话复杂度是O(n2)数据是106,这么做的话会超时,然后我就尝试用DFS跟BFS看能不能得到每个和下面有多少个数字,对应的有哪些。但实现不了,无奈之下我就直接用暴力了。
在这里插入图片描述
这题难受啊想了半天看能不能转换成直角坐标系再偏移都是失败了,没得分。因为这一题没想出来我已经开始慌了。
继续看下一题。
在这里插入图片描述
又想了一会,这啥呀样例一为啥最后是空?ea可以抵消吗?不能吧?这时候我已经紧张的不行了,在蜂巢耗费了很多时间,于是我赶紧滑到最后三题,想把最后三题搞定,最后三题一共有20+25+25分,拿完的话还是可以保住省一的。
在这里插入图片描述
然后看倒数第三题,这时候大概是11.15分这样,考到一点,也就是说差不多还有两个小时的时间。看了一会,我想起了蓝桥算法训练有一道题跟这挺像的
在这里插入图片描述
但是我没做,怪可惜的。但不要紧,因为我仿佛已经有思路了。我一开始看格式以为用多重背包求解,发现它的价值会变,所以多重背包不行,想啊想,噢可以用优先队列。每次拿最大的,然后用个字典标记每个价值的变化量即可,每变一次更新一次。调试完觉得没问题之后就看倒数第二题。
在这里插入图片描述
做到这题的时候大概11.50这样。最长不下降子序列跟最长递增子序列是两兄弟,我会后者,前者当然就没有问题了。这里不同的是可以修改K个值。想了一会可以对子序列进行路径还原,得出每个子序列的下标后计算他们的差分数组。得出里面的最大值,如果这个最大值大于K,那就用子序列总长度加K,否则就用子序列总长度加差分数组的最大值。因为哪两个数距离最大,就可以让这两个数之间的K个数或距离最大值变成与前一个数一样的数值。 要知道LIS+路径还原对标的是国赛难度,(蓝桥杯 游园安排【第十一届】【决赛】【A组】 )所以蓝桥他们目的是很明显的:如果要参加国赛,就必须在参加省赛前刷不少国赛的题。
虽然我已经想出来这道题怎么做了,但是我做了一个错误的决定,因为这个错误的决定导致我拿到省一的几率降低了至少一半。我竟然脑抽的选择先看下一题?
在这里插入图片描述
来到最后一题,大概是12点。还有一个小时,我紧绷的神经稍微放松了些。看完题目,我第一眼以为是编辑距离的变种,结果不是。想了3-5分钟这样有了大概的思路,当时我的思路是这样的,一层循环,每遍历一个数,用个变量记录其变为0所需要的值,并存入到长度为k的队列中,从这个数开始往后,先用这个值减去队列里面的和,如果大于等于0,则将相减后剩余的值存入到队列中,如果小于0则清空队列并将0存入到队列中。调试了一下好像没啥问题,准备提交的时候才发现小于0的部分处理不对,不应该变为0的,因为这个数的后面那些数也会被影响。瞬间我就紧张起来,因为已经十二点半了,不够时间了,于是我匆匆的改了一下,发现都不行,过了十分钟,已经40分了,无奈之下我只能把现有的代码提交做刚才那道题了。

一提交发现!提交不了!没网了!我一回头发现我手机黑屏了!按了一下手机电源开不了机,果然是没电了…按了一下充电宝,还是满电!我感觉像是在做噩梦一样,无比的绝望,我马上拿起手机充电器给手机充电,虽然是快充,但关键时刻派不上用场,充了一两分钟还不能开机,我一直按电源一直等,那段时间真的太太太太太漫长了,真的好绝望。等了好一会终于开机了,我立马进入腾讯会议向监考员反映,因为我也不知道我关机多久了,监考员跟我说考试系统会有答题记录的,继续答题就行。我听到这句话很无奈,不知道说他好还是说他不好,说他好是因为我这样可能没有违规,说他不好是因为这意味着这样大大降低了作弊考生作弊的成本,对我们这些孤军奋战的考生来说真的非常不公平…说实话我希望他说我违规了要调查我。我当时考试的那个教室前后都有摄像头,而且那个教室只有我一个人。这样我就能找学校调取监控进行申诉了。可是…哎…

回到倒数第二题,当时还剩下十分多钟了,监考员一直提醒还有多少分钟,一定不能超时交,太难受了那十多分钟,监考员一直催,我也处于高度紧张状态。虽然我考试前一天做过一道LIS+路径还原的题目,但实际考试因为数据跟要求不同,所以我不能将原型放上去,部分逻辑思路也要改变,既然要改变就要思考,但在时间不多,监考员一直催的特高压情况下,我最终还是是没有写完,差一个循环得到差分数组的最大值了。还有一分钟,我看一分一秒的过去,根本就不能静下来思考问题。无奈之下我只能直接提交最长不下降子序列的长度了,没有加上K值…

遗憾啊遗憾..

️️反思

这场比赛我犯了几个严重的错误:情绪波动过大,且不能够迅速调整自己状态;没有规划好时间;题目完成率要求过高,没有第一时间将自己能完成的题目完成;没有适时的检查自己设备的使用情况等。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/lishuaigell/article/details/124079922

智能推荐

while循环&CPU占用率高问题深入分析与解决方案_main函数使用while(1)循环cpu占用99-程序员宅基地

文章浏览阅读3.8k次,点赞9次,收藏28次。直接上一个工作中碰到的问题,另外一个系统开启多线程调用我这边的接口,然后我这边会开启多线程批量查询第三方接口并且返回给调用方。使用的是两三年前别人遗留下来的方法,放到线上后发现确实是可以正常取到结果,但是一旦调用,CPU占用就直接100%(部署环境是win server服务器)。因此查看了下相关的老代码并使用JProfiler查看发现是在某个while循环的时候有问题。具体项目代码就不贴了,类似于下面这段代码。​​​​​​while(flag) {//your code;}这里的flag._main函数使用while(1)循环cpu占用99

【无标题】jetbrains idea shift f6不生效_idea shift +f6快捷键不生效-程序员宅基地

文章浏览阅读347次。idea shift f6 快捷键无效_idea shift +f6快捷键不生效

node.js学习笔记之Node中的核心模块_node模块中有很多核心模块,以下不属于核心模块,使用时需下载的是-程序员宅基地

文章浏览阅读135次。Ecmacript 中没有DOM 和 BOM核心模块Node为JavaScript提供了很多服务器级别,这些API绝大多数都被包装到了一个具名和核心模块中了,例如文件操作的 fs 核心模块 ,http服务构建的http 模块 path 路径操作模块 os 操作系统信息模块// 用来获取机器信息的var os = require('os')// 用来操作路径的var path = require('path')// 获取当前机器的 CPU 信息console.log(os.cpus._node模块中有很多核心模块,以下不属于核心模块,使用时需下载的是

数学建模【SPSS 下载-安装、方差分析与回归分析的SPSS实现(软件概述、方差分析、回归分析)】_化工数学模型数据回归软件-程序员宅基地

文章浏览阅读10w+次,点赞435次,收藏3.4k次。SPSS 22 下载安装过程7.6 方差分析与回归分析的SPSS实现7.6.1 SPSS软件概述1 SPSS版本与安装2 SPSS界面3 SPSS特点4 SPSS数据7.6.2 SPSS与方差分析1 单因素方差分析2 双因素方差分析7.6.3 SPSS与回归分析SPSS回归分析过程牙膏价格问题的回归分析_化工数学模型数据回归软件

利用hutool实现邮件发送功能_hutool发送邮件-程序员宅基地

文章浏览阅读7.5k次。如何利用hutool工具包实现邮件发送功能呢?1、首先引入hutool依赖<dependency> <groupId>cn.hutool</groupId> <artifactId>hutool-all</artifactId> <version>5.7.19</version></dependency>2、编写邮件发送工具类package com.pc.c..._hutool发送邮件

docker安装elasticsearch,elasticsearch-head,kibana,ik分词器_docker安装kibana连接elasticsearch并且elasticsearch有密码-程序员宅基地

文章浏览阅读867次,点赞2次,收藏2次。docker安装elasticsearch,elasticsearch-head,kibana,ik分词器安装方式基本有两种,一种是pull的方式,一种是Dockerfile的方式,由于pull的方式pull下来后还需配置许多东西且不便于复用,个人比较喜欢使用Dockerfile的方式所有docker支持的镜像基本都在https://hub.docker.com/docker的官网上能找到合..._docker安装kibana连接elasticsearch并且elasticsearch有密码

随便推点

Python 攻克移动开发失败!_beeware-程序员宅基地

文章浏览阅读1.3w次,点赞57次,收藏92次。整理 | 郑丽媛出品 | CSDN(ID:CSDNnews)近年来,随着机器学习的兴起,有一门编程语言逐渐变得火热——Python。得益于其针对机器学习提供了大量开源框架和第三方模块,内置..._beeware

Swift4.0_Timer 的基本使用_swift timer 暂停-程序员宅基地

文章浏览阅读7.9k次。//// ViewController.swift// Day_10_Timer//// Created by dongqiangfei on 2018/10/15.// Copyright 2018年 飞飞. All rights reserved.//import UIKitclass ViewController: UIViewController { ..._swift timer 暂停

元素三大等待-程序员宅基地

文章浏览阅读986次,点赞2次,收藏2次。1.硬性等待让当前线程暂停执行,应用场景:代码执行速度太快了,但是UI元素没有立马加载出来,造成两者不同步,这时候就可以让代码等待一下,再去执行找元素的动作线程休眠,强制等待 Thread.sleep(long mills)package com.example.demo;import org.junit.jupiter.api.Test;import org.openqa.selenium.By;import org.openqa.selenium.firefox.Firefox.._元素三大等待

Java软件工程师职位分析_java岗位分析-程序员宅基地

文章浏览阅读3k次,点赞4次,收藏14次。Java软件工程师职位分析_java岗位分析

Java:Unreachable code的解决方法_java unreachable code-程序员宅基地

文章浏览阅读2k次。Java:Unreachable code的解决方法_java unreachable code

标签data-*自定义属性值和根据data属性值查找对应标签_如何根据data-*属性获取对应的标签对象-程序员宅基地

文章浏览阅读1w次。1、html中设置标签data-*的值 标题 11111 222222、点击获取当前标签的data-url的值$('dd').on('click', function() { var urlVal = $(this).data('ur_如何根据data-*属性获取对应的标签对象

推荐文章

热门文章

相关标签