题解 | 回文数判断

回文数判断

https://www.nowcoder.com/practice/b685d58f237c4214ada27161304a74a3

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner console = new Scanner(System.in);
        Main main = new Main();
        int number = console.nextInt();
        System.out.println(main.palindromeNumber(number));
    }

    public Boolean palindromeNumber(int number) {

        //write your code here......
        int leftNum = number;
        int left = getFirstNum(number);
        int leftIndex = 0;
        int rightNum = number;
        int right = getLastNum(number);
        int rightIndex = getNumLength(number);
        int divide = 1;

        for (int i = 0; i < rightIndex - 1; i++) {
            divide *= 10;
        }
        while (leftIndex < rightIndex) {
            if (left != right) {
                return false;
            }
            leftNum %= divide;
            divide /= 10;
            rightNum /= 10;
            left = getFirstNum(leftNum);
            right = getLastNum(rightNum);
            leftIndex++;
            rightIndex--;
        }
        return true;
    }

    private int getNumLength(int num) {
        int len = 0;
        while (num > 0) {
            len++;
            num /= 10;
        }
        return len;
    }

    private int getFirstNum(int num) {
        while (num >= 10) {
            num /= 10;
        }
        return num;
    }

    private int getLastNum(int num) {
        return num % 10;
    }
}

全部评论

相关推荐

叁六玖:我靠,对我来说是巨款了
点赞 评论 收藏
分享
2025-12-17 12:08
门头沟学院 产品经理
牛客85811352...:1希音不知道算不算大厂 2完全符合,过得很舒服, 3确实只有杂活 领导找我续签到明年3、4月我要继续吗。主要是边实习边秋招这段时间还是有点累
什么是优秀的实习经历
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务