题解 | #自守数#

自守数

https://www.nowcoder.com/practice/88ddd31618f04514ae3a689e83f3ab8e

import java.util.Scanner;


public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNext()) {
            int n = in.nextInt();
            int count = 0;
            for (int i = 0; i <= n; i++) {
                if (test(i)) {
                    count++;
                }
            }
            System.out.println(count);
        }
    }

    public static  boolean test(int n) {
        if (n <= 1) {
            return true;
        } else {
            int sum = 0;
            int temp = n * n;
            while (n > 0 ) {
                //n%10取最后一位
                if (temp % 10 != n %10) {
                    return false;
                }
                n = n / 10;//去掉最后一位
                temp = temp /10;
            }
            return true;
        }
    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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