十三届蓝桥杯真题JavaB组解析+代码(带你复习知识点)(一)

本文涉及的产品
全局流量管理 GTM,标准版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
简介: 十三届蓝桥杯真题JavaB组解析+代码(带你复习知识点)(一)

试题 A: 星期计算 【填空题】

d9871d1d7cf641dd971fe0938e13b0aa.png

答案:7

解析:直接对所给数进行取余,然后直接再加6(注意:不能直接让20^22+6再对7进行取余操作,这是不对的,这个6可以看成已经取余过了。) 直接取余的话可以使用java自带的Math.pow(数,次方),或者使用BigInteger(BigInteger和int的区别就是前者范围没有限制,所以可以直接使用)。


实现代码:

方法一:使用BigInteger解

public class one {
  public static void main(String[] args) {
    BigInteger bigInteger = BigInteger.valueOf(20).pow(22).mod(BigInteger.valueOf(7));
    int ha = (bigInteger.intValue()+6)%7;
    System.out.println(ha);
  }
}


方法二:直接使用Math.pow()

public static void main(String[] args) {
    System.out.println(Math.pow(20, 22)%7+6);
  }


试题 B: 山 【填空题】

29917728fbe94549b3a033aa1dd8eca1.png

答案:3138


解析:通过分析这道题,虽然给的是一个范围,但是考的还是判断一个数是否是回文数且前一半是不递减,我们实现判断回文和不递减方法后,通过一个for循环便可以求出结果。因为数据量比较大,所以比较耗时,大概快一分钟。


实现代码:

方法一:判断是否回文字符串使用双指针进行判断:

public class two {
  public static void main(String[] args) {
    int count = 0;
    for(int i =2022;i<=2022222022;i++) {
      if(check(i) && isHuiWen(i)) {
        count++;
      }
    }
    System.out.println(count);
  }
  private static boolean check(int num) {
    String s = num+"";
    for(int i =0;i<s.length()/2;i++) {
      if(s.charAt(i)>s.charAt(i+1)) return false;
    }
    return true;
  }
  private static boolean isHuiWen(int num) {
    String s = num+"";
    for(int i =0,r=s.length()-1;i<r;i++,r--) {
      if(s.charAt(i) != s.charAt(r)) return false;
    }
    return true;
  }
}


方法二:使用StringBuilder.reverse().toString.equals()来判断

这里补充一下三者用法区别:

8b023e53ef3d40049d5dc9082b0a678c.png

public class two {
  public static void main(String[] args) {
    int count = 0;
    for(int i =2022;i<=2022222022;i++) {
      if(check(i) && isHuiWen1(i)) {
        count++;
      }
    }
    System.out.println(count);
  }
  private static boolean check(int num) {
    String s = num+"";
    for(int i =0;i<s.length()/2;i++) {
      if(s.charAt(i)>s.charAt(i+1)) return false;
    }
    return true;
  }
  private static boolean isHuiWen1(int num) {
    String snum = num+"";
    StringBuilder stringBuilder = new StringBuilder(snum);
    return stringBuilder.reverse().toString().equals(snum);
  }
}


试题 C: 字符统计【代码题】

388c75a84c6e4db986fbc2ff4df9129a.png


分析:方法一:可以通过定义一个容量为26的数组来记录每个字符出现的次数,然后查找出次数最大的字符,通过遍历一遍for循环,来使按照字母表顺序输出。

补充知识点:

键盘输入的时候,next和nextline的区别,因为可能输入空的字符串,所以这里使用nextline来进行接收。

2a5809edec544124a9dd8be50e914377.png


代码实现:

public class three {
  public static void main(String[] args) {
    Scanner scanner = new Scanner(System.in);
    String str = scanner.nextLine();
    int[] arr = new int[26];
    String str1 = "";
    for(int i =0;i<str.length();i++) {
      arr[str.charAt(i)-'A']++;
    }
    int max = Integer.MIN_VALUE;
    for(int i =0;i<26;i++) {
      max = Math.max(max, arr[i]);
    }
    for(int i=0;i<26;i++) {
      if(arr[i] == max) {
        str1=str1+""+(char)(i+'A');
      }
    }
    System.out.println(str1);
  }
}


相关文章
|
6天前
|
搜索推荐 UED Python
实现一个带有昼夜背景切换的动态时钟:从代码到功能解析
本文介绍了一个使用Python和Tkinter库实现的动态时钟程序,具有昼夜背景切换、指针颜色随机变化及整点和半点报时功能。通过设置不同的背景颜色和随机变换指针颜色,增强视觉吸引力;利用多线程技术确保音频播放不影响主程序运行。该程序结合了Tkinter、Pygame、Pytz等库,提供了一个美观且实用的时间显示工具。欢迎点赞、关注、转发、收藏!
123 94
|
6天前
|
SQL Java 数据库连接
如何在 Java 代码中使用 JSqlParser 解析复杂的 SQL 语句?
大家好,我是 V 哥。JSqlParser 是一个用于解析 SQL 语句的 Java 库,可将 SQL 解析为 Java 对象树,支持多种 SQL 类型(如 `SELECT`、`INSERT` 等)。它适用于 SQL 分析、修改、生成和验证等场景。通过 Maven 或 Gradle 安装后,可以方便地在 Java 代码中使用。
94 11
|
27天前
|
自然语言处理 搜索推荐 数据安全/隐私保护
鸿蒙登录页面好看的样式设计-HarmonyOS应用开发实战与ArkTS代码解析【HarmonyOS 5.0(Next)】
鸿蒙登录页面设计展示了 HarmonyOS 5.0(Next)的未来美学理念,结合科技与艺术,为用户带来视觉盛宴。该页面使用 ArkTS 开发,支持个性化定制和无缝智能设备连接。代码解析涵盖了声明式 UI、状态管理、事件处理及路由导航等关键概念,帮助开发者快速上手 HarmonyOS 应用开发。通过这段代码,开发者可以了解如何构建交互式界面并实现跨设备协同工作,推动智能生态的发展。
144 10
鸿蒙登录页面好看的样式设计-HarmonyOS应用开发实战与ArkTS代码解析【HarmonyOS 5.0(Next)】
|
1月前
|
PHP 开发者 容器
PHP命名空间深度解析:避免命名冲突与提升代码组织####
本文深入探讨了PHP中命名空间的概念、用途及最佳实践,揭示其在解决全局命名冲突、提高代码可维护性方面的重要性。通过生动实例和详尽分析,本文将帮助开发者有效利用命名空间来优化大型项目结构,确保代码的清晰与高效。 ####
34 1
|
2月前
|
机器学习/深度学习 存储 人工智能
强化学习与深度强化学习:深入解析与代码实现
本书《强化学习与深度强化学习:深入解析与代码实现》系统地介绍了强化学习的基本概念、经典算法及其在深度学习框架下的应用。从强化学习的基础理论出发,逐步深入到Q学习、SARSA等经典算法,再到DQN、Actor-Critic等深度强化学习方法,结合Python代码示例,帮助读者理解并实践这些先进的算法。书中还探讨了强化学习在无人驾驶、游戏AI等领域的应用及面临的挑战,为读者提供了丰富的理论知识和实战经验。
82 5
|
8月前
|
人工智能 算法 Java
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-992 士兵杀敌(二)
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-992 士兵杀敌(二)
108 1
|
8月前
|
人工智能 算法 Java
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-1005 数字游戏
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-1005 数字游戏
121 0
|
8月前
|
Java C语言 C++
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-1000 kAc给糖果你吃
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-1000 kAc给糖果你吃
93 0
|
8月前
|
算法 Java C语言
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-999 数的潜能
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-999 数的潜能
99 0
|
8月前
|
算法 Java C语言
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-997 粘木棍
第十四届蓝桥杯集训——练习解题阶段(无序阶段)-ALGO-997 粘木棍
103 0

热门文章

最新文章

推荐镜像

更多