蓝桥杯题目(两天速成!!!包含整体备考流程)

1.前言

上上个礼拜结束了第十五届蓝桥杯的比赛,这两天闲来无事,在这里记录一下,我参加的是软件赛java研究生组,末尾省一,回顾自己的参赛经历,总结了相关获奖经验如下:

2.比赛环境

如果你是线下统一在学校机房考,真实环境就是平时在IDE上编代码的环境,比如java用的就是2020-06版的eclipse,创建好.java文件后,就是开局一个类加main主函数,然后剩下的就是自己代码发挥了。其余语言的比赛环境基本都是不同的IDE,相关链接如下:

官方大赛编译环境(我这是第十五届,可能有变化):link
java eclipse初始配置:link

3.比赛准备

说实话,因为论文和实习相关的事,我前后就准备了两天,但我力扣刷了300多道了,所以说裸考,直接躺的基本都是大骗子,整体准备流程基本和其他比赛大差不差,主要包括:

  • 先把考试环境、语言相关的基础数据结构和算法过一遍,比如数组、集合、排序(这个很重要!!!尤其是map的排序)等等
  • 之后官网或者B站看看考试大纲、常考题型(比如日期相关的考的挺多)、考试注意事项、时间分配啥的
  • 最后直接开干真题,啥也不要管,尤其是像我一样两天速成的(因为我那时候也两个月没动力扣了,有点虚),从最新的题目倒序刷,2023、2022研究生组省赛国赛这样的,也不是刷题,有的像背题吧,五分钟有思路直接暴力或者用更好的解法,没有就看解析(蓝桥杯刷题那的解析真不是人看的…)
    相关链接如下:
官方大赛刷题网站:link
真题链接:link

4.注意事项

  • 带瓶水吧,容易饿带带面包啥的,四小时不是人呆的。
  • 注意类一定要命名为Main,主方法命名为main(这个要细看考前注意事项,考试时候主界面有,可能有变化)。
  • 能用excel(比如算天数)或者word辅助(比如用查找数数字)就用,不算作弊好像。
  • 别太纠结某个题,尤其是填空,十分钟没思路果断跳,能暴力就暴力,最后调试下看是不是测试用例对应的结果,实在不会就输出测试用例的结果也行,不知道有没有分,我最后反正有一道题直接输出。
  • 有bug不要慌,看看有无越界,字母拼写,死循环等问题,我中途还换了台机子就是因为死循环搞的IDE宕机了…
  • 最后我感觉我的总分应该是在50多分左右,不知道对不对(第15届题目比较简单较前两年而言,一道填空,五道大题,有些只用了暴力),省三我估计15分左右?一道填空一道大题。

5.两天刷的题(编码水平不够望见谅)

  • 运动会
import java.util.Scanner;


public class Main {
   
    public static void main(String[] args) {
   
        Main main=new Main();
        Scanner scan = new Scanner(System.in);
        int n=scan.nextInt();
        int m=scan.nextInt();
        int k=scan.nextInt();
        /* 用一个二维数组存每个比赛的分数 */
        int[][] arr=new int[n][m];
        for(int i=0;i<n;++i){
   
          for(int j=0;j<m;++j){
   
             arr[i][j]=scan.nextInt();
          }
        }
        int sum,temp;
        /* 遍历二维数组的每一个成绩,根据返回的名次得出对应分数加起来即可 */
        for(int i=0;i<n;++i){
   
          sum=0;
          for(int j=0;j<m;++j){
   
             temp=main.getRank(arr,arr[i][j],j);
             sum+=Math.max(k+1-temp,0); 
          }
          System.out.print(sum+" ");
        }
        
        scan.close();
       
    }
    /* 对于每个运动员的每个比赛成绩,计算它在当前比赛中有几个比它大的,进而计算出名次,返回名次 */
     public int getRank(int[][] arr,int curScore,int j){
   
           int ans=1;
           for(int i=0;i<arr.length;++i){
   
              if(curScore<

你可能感兴趣的:(蓝桥杯,java,c++,python,javascript,算法,数据结构)