💎蓝桥杯系列文章
2023第十四届蓝桥杯校内模拟赛第三期个人题解(Java实现)
2023第十四届蓝桥杯模拟赛第二期(Java组)
💎前言
这篇文章为个人题解,假如我写的解法有误,欢迎大家在评论区指正👏👏!!!希望这篇文章对你有帮助❤❤
💎填空题
🎯问题1:大于 2022 的最小数
请找到一个大于 2022 的最小数,这个数转换成二进制之后,最低的 6 个二进制为全为 0 。
请将这个数的十进制形式作为答案提交。
💡Java代码
public static void main(String[] args) {
int flag=0;
for(int i=2023;;i++){
String str=Integer.toBinaryString(i); //转换为二进制
if(str.length()>=6) {
//二进制长度大于6才继续
String substr = str.substring(str.length() - 6); //取出最后6 个二进制位
if(substr.equals("000000")) {
System.out.println(i);
break;
}
}
}
}
结果:
2048
🎯问题2:时间间隔
计算1949年10月1日至2022年1月1日间隔的天数
直接用电脑自带计算器:
🎯问题3:进制转换
8518 是一个非常特殊的数,如果把这个数看成 16 进制数,它的值为 (8518)16=8161616+51616+116+8=34072,而 34072 正好是 8518 的整数倍。
9558 也是这样一个数,当看成 16 进制时是 38232。其实长度为 1 的数 0 到 9 都满足看成 16 进制后是自己的整数倍(1倍)。
请问,除开长度为 1 的数,最小的满足这样条件的数是多少?
💡Java代码
public static void main(String[] args) {
for(int i=10;;i++){
int num=Integer.valueOf(Integer.toString(i),16);//将数值看作16进制数,将其转为10进制
if(num%i==0) {
System.out.println(i);
break;
}
}
}
💯结果:
1038
🎯问题4:最长路径
从矩阵第一行第一列出发,只能水平往右走或者竖直往下走,求所走折线的数字之和的最大值。
🎯问题5:2022最多能拆分为多少个质数之和
2022能拆分为多个质数之和,请问最多能拆分为多少个?
💡Java代码
public class h5 {
// 判断数字是否为质数
public static boolean iszhishu(int n){
for(int i=2;i<n;i++){
if(n%i==0)
return false;
}
return true;
}
public static void main(String[] args)