山 蓝桥杯 java

题目

这天小明正在学数数。
他突然发现有些正整数的形状像一挫 “山”, 比如 123565321、 145541123565321它 们左右对称 (回文) 且数位上的数字先单调不减, 后单调不增。
小朋数了衣久也没有数完, 他惒让你告诉他在区间 [2022,2022222022] 中有 多少个数的形状像一座 “山”。

答案

3138

代码

public class{
    public static void main(String[] args) {
    
            long count = 0;
            for(long i=2022;i<=2022222022;i++) {
                if(huiwen(i)&&up(i)) {
                    System.out.println(i);
                    count++;
                }
            }
            System.out.println(count);
        }

    static boolean huiwen(Long i) {
        StringBuffer s;
        String tmp,reverse;
        s = new StringBuffer(Long.toString(i));
        tmp = new String(s.toString());
        reverse = s.reverse().toString();
        if(tmp.equals(reverse)) return true;
        else return false;
    }

    static boolean up(Long i) {
        String s = new String(Long.toString(i));
        for(int k=0;k<s.length()/2;k++) {
            if(s.charAt(k)>s.charAt(k+1)) return false;
        }
        return true;
    }

}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值