蓝桥打卡-day12

总贴:第十四届蓝桥杯三月真题刷题训练——第 12 天(3.15)-CSDN社区

拉跨的身体……;

题1、0 的个数 - 蓝桥云课 (lanqiao.cn)

问题描述
给定一个正整数 n ,请问 n 的十进制表示中末尾总共有几个 0 ?
输入格式
输入一行包含一个正整数 n
输出格式
输出一个整数,表示答案。
样例输入
20220000
样例输出
4

题解、(暴力)

根据题目描述我们需要求除10进制数最后几个0;我们可以将这个数变成String 倒着遍历,如果取出的字符表示’0‘,就结束;
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        //在此输入您的代码...
        String s = scan.next();
        long ans = 0 ;
        for(int i = s.length()-1; i >= 0;i--){
          if(s.charAt(i) == '0') ans++;
          else break;
        }
        System.out.println(ans);
        scan.close();
    }
}

题2、超级质数 - 蓝桥云课 (lanqiao.cn)

问题描述
如果一个质数 � P 的每位数字都是质数, 而且每两个相邻的数字组成的两位 数是质数, 而且每三位相邻的数字组成的三位数是质数, 依次类推, 如果每相 邻的 � k 位数字组成的 � k 位数都是质数, 则 � P 称为超级质数。
如果把超级质数 � P 看成一个字符串, 则这个超级质数的每个子串都是质 数。
例如, 53 是一个超级质数。
请问, 最大的超级质数是多少?
答案提交
这是一道结果填空的题, 你只需要算出结果后提交即可。本题的结果为一 个整数, 在提交答案时只填写这个整数, 填写多余的内容将无法得分。
运行限制
最大运行时间:1s
最大运行内存: 256M

题解、(暴力)

刚开始看见最大超级质数就想到737373,但是它可以被73整除;返回不会太大,评论区逛了一圈373;范围就定在 1000 - 2 ;如何判断超级质数我可以依次截取不同区域的字符串,然后处于(2 - 它本身-1)的数、不对好像Math.sqrt()就可以了;如果过程中有等于0的这个数就不是质数,如果这个数==1 它也不属于;
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改

public class Main {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        //在此输入您的代码,...
        for(int i = 1000 ; i >= 2 ;i--){
          if(isSuShuAnd(i)){
            System.out.println(i);
            break;
          }
        }
        scan.close();
    }
    static boolean isSuShuAnd(int x){
      String s = String.valueOf(x);
      for(int i = 0 ; i < s.length() ; i++){
        for(int j = i ; j < s.length(); j++){
          int temp = Integer.parseInt(s.substring(i , j+1));
          if(!isSuShu(temp)) return false;
        }
      }
      return true;
    }


    static boolean isSuShu(int x){
      if(x == 1) return false;
      for(int i = 2 ; i < x;i++){
        if(x % i == 0) return false;
      }
      return true;
    }
}

AC截图

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

续写少年!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值