【蓝桥真题6】三十块的蓝桥省赛模拟真题,做的大一都直呼上当(文末PDF原题)(上)

简介: 【蓝桥真题6】三十块的蓝桥省赛模拟真题,做的大一都直呼上当(文末PDF原题)

🍺1.A的个数


以下是一个 25 行 25 列的字母矩阵,全部由字母 A 和 B 组成。

AAAAAAABABBAABABABAAAAAAA

ABBBBBABBAABBBBBABABBBBBA

ABAAABABBBABAABBBBABAAABA

ABAAABABBBBBAABAABABAAABA

ABAAABABBABABBABABABAAABA

ABBBBBABBBABAABBBBABBBBBA

AAAAAAABABABABABABAAAAAAA

BBBBBBBBABAABABBBBBBBBBBB

AABAABABBAAABBAAABABBBBBA

ABBABABBBABBAAAABBBBAAAAB

BBBBAAABABAABABAABBBAABBA

BBAABABABAAAABBBAABBAAAAA

ABABBBABAABAABABABABBBBBA

AAAABBBBBABBBBAAABBBABBAB

AABAABAAABAAABAABABABAAAA

ABBBBBBBBABABBBBABAABBABA

ABBBAAABAAABBBAAAAAAABAAB

BBBBBBBBABBAAABAABBBABBAB

AAAAAAABBAAABBBBABABAABBA

ABBBBBABBAABABAAABBBABBAA

ABAAABABABBBAAAAAAAAAABAA

ABAAABABABABBBABBAABBABAA

ABAAABABBABBABABAABAABAAA

ABBBBBABABBBBBABBAAAABAAA

AAAAAAABAABBBAABABABBABBA

请问在这个矩阵中有多少个字母A?


      第一题打卡题,非常让人舒服的题目,不过做了和没做对自己都没啥帮助哈哈哈。


      代码转换:


public class Main4 {
  public static void main(String[] args) {
  String a="AAAAAAABABBAABABABAAAAAAA\r\n" + 
    "  ABBBBBABBAABBBBBABABBBBBA\r\n" + 
    "  ABAAABABBBABAABBBBABAAABA\r\n" + 
    "  ABAAABABBBBBAABAABABAAABA\r\n" + 
    "  ABAAABABBABABBABABABAAABA\r\n" + 
    "  ABBBBBABBBABAABBBBABBBBBA\r\n" + 
    "  AAAAAAABABABABABABAAAAAAA\r\n" + 
    "  BBBBBBBBABAABABBBBBBBBBBB\r\n" + 
    "  AABAABABBAAABBAAABABBBBBA\r\n" + 
    "  ABBABABBBABBAAAABBBBAAAAB\r\n" + 
    "  BBBBAAABABAABABAABBBAABBA\r\n" + 
    "  BBAABABABAAAABBBAABBAAAAA\r\n" + 
    "  ABABBBABAABAABABABABBBBBA\r\n" + 
    "  AAAABBBBBABBBBAAABBBABBAB\r\n" + 
    "  AABAABAAABAAABAABABABAAAA\r\n" + 
    "  ABBBBBBBBABABBBBABAABBABA\r\n" + 
    "  ABBBAAABAAABBBAAAAAAABAAB\r\n" + 
    "  BBBBBBBBABBAAABAABBBABBAB\r\n" + 
    "  AAAAAAABBAAABBBBABABAABBA\r\n" + 
    "  ABBBBBABBAABABAAABBBABBAA\r\n" + 
    "  ABAAABABABBBAAAAAAAAAABAA\r\n" + 
    "  ABAAABABABABBBABBAABBABAA\r\n" + 
    "  ABAAABABBABBABABAABAABAAA\r\n" + 
    "  ABBBBBABABBBBBABBAAAABAAA\r\n" + 
    "  AAAAAAABAABBBAABABABBABBA";
  char[] s=a.toCharArray();
  int ans=0;
  for(int i=0;i<s.length;++i) {
    if(s[i]=='A') ans++;
  }
  System.out.println(ans);//318
  }
}


🍻 2.最2数字


如果一个整数的某个数位包含 2 ,则称这个数为一个“最2数字”。例如:102、2021 都是最2数字。

请问在 1(含) 到 2021(含) 中,有多少个最2数字。


    不知道为啥蓝桥杯这几年和数字2杠上了,经常出这种和2有关的题目,不过难度一般都是非常友好的,对于大家来说只要细心一点都不会错,也是属于签到的题目。


    代码转换:


public class Main2 {
  public static void main(String[] args) {
  int ans=0;
  for(int i=1;i<=2021;++i) {
    if(check(i)) ans++;
  }
  System.out.println(ans);//564
  }
  static boolean check(int n) {
  while(n!=0) {
    if(n%10==2) return true;
    n/=10;
  }
  return false;
  }
}


🍸3.最少次数


有一个整数 A=2021,每一次,可以将这个数加 1 、减 1 或除以 2,其中除以 2 必须在数是偶数的时候才允许。


例如,2021 经过一次操作可以变成 2020、2022。


再如,2022 经过一次操作可以变成 2021、2023 或 1011。


请问,2021 最少经过多少次操作可以变成 1。        


      非常非常经典的题目,力扣上甚至有许多类似的题目,大家有兴趣可以去搜索一下,具体的题目名字我也忘记了。这里由于求的是最少的操作,具有最短路的性质,所以我用的是BFS来搜索。当然这道题的做法有非常多,但我觉得这类题通用BFS模板既不容易出错也能写的更快,何乐而不为呢?


     为什么想到用BFS呢?因为对于每个数只有+1,-1,/2的操作。而我们平时图论中搜索是可以上下左右,第一次走到的地方一定是最短路径,而我们这里同理,每个数有+1,-1,/2的三种走法(当然奇数只有前两种),每次我们得到一个新数时,一定是通过最少的操作次数得到它。(如果你学过BFS就能明白,没学过肯定不懂,所以还是先掌握好BFS,当然这题也有其他的做法)


public class Main3 {
  public static void main(String[] args) {
  //数组开个10000完全够用了
  boolean[] visit=new boolean[10000];
  Queue<Integer> queue=new LinkedList<>();
  queue.offer(2021);
  visit[2021]=true;
  //记录答案
  int time=0;
  //BFS模板走起
  while(!queue.isEmpty()) {
    int size=queue.size();
    while(size-->0) {
    int curr=queue.poll();
    //判断curr如果是1则直接输出time就是我们的答案
    if(curr==1) {
      System.out.println(time);//14
      return;
    }
    if(!visit[curr+1]) {
      visit[curr+1]=true;
      queue.offer(curr+1);
    }
    if(!visit[curr-1]) {
      visit[curr-1]=true;
      queue.offer(curr-1);
    }
    //一定要记住,只有偶数才可以选择除以2的操作
    if(curr%2==0&&!visit[curr/2]) {
      visit[curr/2]=true;
      queue.offer(curr/2);
    }
    }
    time++;
  }
  }
}


🍹4.超大玉螺旋丸


对于一个 n 行 m 列的表格,我们可以使用螺旋的方式给表格依次填上正整数,我们称填好的表格为一个螺旋矩阵。


例如,一个 4 行 5 列的螺旋矩阵如下:


1 2 3 4 5

14 15 16 17 6

13 20 19 18 7

12 11 10 9 8


请问,一个 30 行 30 列的螺旋矩阵,第 20 行第 20 列的值是多少?        


        这个题名有点中二了哈哈哈哈哈哈哈,原谅看到这个题目一下想到鸣人。这道题还是有点意思的,有点蓝桥特色。而且这题目在力扣中是有类似的原题的(某个小伙伴告诉我的,非常感谢),直接打印出这个矩阵,然后输出答案即可。问题是如何打印呢?这里我用的是卡神题解中的模板打印,这里我不过多讲解,因为力扣评论区有非常多的大佬详解,这里也附上类似力扣类似原题链接:螺旋矩阵||


       本来想用Excel拉出这个表格,但发现一旦左拉或者上拉就会递减,确实不会。如果有会的小伙伴也可以评论区或者私信教我一下,非常感谢😂


       代码转换:

public class Main4 {
  public static void main(String[] args) {
  int[][] arr=generateMatrix(30);
        //注意第二十行二十列的下标应该是19,19
  System.out.println(arr[19][19]);//819
  }
  //返回的二维数组就是打印好的数组
  public static int[][] generateMatrix(int n) {
         int l = 0, r = n - 1, t = 0, b = n - 1;
         int[][] mat = new int[n][n];
         int num = 1, tar = n * n;
         while(num <= tar){
             for(int i = l; i <= r; i++) mat[t][i] = num++; // left to right.
             t++;
             for(int i = t; i <= b; i++) mat[i][r] = num++; // top to bottom.
             r--;
             for(int i = r; i >= l; i--) mat[b][i] = num++; // right to left.
             b--;
             for(int i = b; i >= t; i--) mat[i][l] = num++; // bottom to top.
             l++;
         }
         return mat;
     }
}


相关文章
|
存储 测试技术
【蓝桥真题6】三十块的蓝桥省赛模拟真题,做的大一都直呼上当(文末PDF原题)(下)
【蓝桥真题6】三十块的蓝桥省赛模拟真题,做的大一都直呼上当(文末PDF原题)
106 0
|
安全 测试技术
【蓝桥真题6】三十块的蓝桥省赛模拟真题,做的大一都直呼上当(文末PDF原题)(中)
【蓝桥真题6】三十块的蓝桥省赛模拟真题,做的大一都直呼上当(文末PDF原题)
154 0
|
2月前
|
Web App开发 Windows
【Windows】 chrome 如何下载网站在线预览PDF文件,保存到本地
【Windows】 chrome 如何下载网站在线预览PDF文件,保存到本地
250 0
|
2月前
|
JSON 关系型数据库 数据库
【python】Python将100个PDF文件对应的json文件存储到MySql数据库(源码)【独一无二】
【python】Python将100个PDF文件对应的json文件存储到MySql数据库(源码)【独一无二】
【python】Python将100个PDF文件对应的json文件存储到MySql数据库(源码)【独一无二】
|
5天前
|
IDE Java 编译器
使用Java分割PDF文件
使用Java分割PDF文件
13 1
|
9天前
|
XML Java 数据格式
Java用xpdf库获取pdf文件的指定范围文本内容
Java用xpdf库获取pdf文件的指定范围文本内容
16 1
|
24天前
|
文字识别 开发工具 数据安全/隐私保护
印刷文字识别产品使用合集之可以识别一张电子发票有多页(多张图片,或者一个PDF文件)的这种发票吗
印刷文字识别产品,通常称为OCR(Optical Character Recognition)技术,是一种将图像中的印刷或手写文字转换为机器编码文本的过程。这项技术广泛应用于多个行业和场景中,显著提升文档处理、信息提取和数据录入的效率。以下是印刷文字识别产品的一些典型使用合集。
|
24天前
|
编解码 文字识别
印刷文字识别操作报错合集之在尝试将PDF文件转换为图片时出现了问题,具体的错误代码是415,该怎么处理
在使用印刷文字识别(OCR)服务时,可能会遇到各种错误。例如:1.Java异常、2.配置文件错误、3.服务未开通、4.HTTP错误码、5.权限问题(403 Forbidden)、6.调用拒绝(Refused)、7.智能纠错问题、8.图片质量或格式问题,以下是一些常见错误及其可能的原因和解决方案的合集。
|
5天前
|
移动开发 JavaScript 前端开发
必知的技术知识:JqueryMedia插件使用,解决在线预览及打开PDF文件
必知的技术知识:JqueryMedia插件使用,解决在线预览及打开PDF文件
|
6天前
在线免费压缩pdf文件
在线免费压缩pdf文件
10 0