水仙花数

2018 校招真题字节跳动水仙花数

题目描述
请判断一个数是不是水仙花数,其中水仙花数是指一个 n 位数 (n>=3),它的每个位上的数字的 n 次幂之和等于它本身。(例如:1^3 + 5^3 + 3^3 = 153)

输入
有多组测试数据,每组测试数据以包含一个整数 n(100<=n<=999),输入 0 表示程序输入结束。

输出
如果 n 是水仙花数就输出 Yes,否则输出 No。

样例输入
153
154
0

样例输出
Yes
No

Java 代码

import java.util.Scanner;

public class Solution {
    public static void main(String[] args) {
        Scanner scan = new Scanner(System.in);
        int n = scan.nextInt();
        while (n != 0) {
            if (isShuiXianhua(n)) {
                System.out.println("Yes");
            } else {
                System.out.println("No");
            }
            n = scan.nextInt();
        }
    }

    public static boolean isShuiXianhua(int n) {
        int length = (n + "").length();
        int temp = n;
        int result = 0;
        while (n != 0) {
            result += Math.pow(n % 10, length);
            n = n / 10;
        }
        if (temp == result) {
            return true;
        }
        return false;
    }
}

题目描述
春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:“水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如:153=13+53+3^3。 现在要求输出所有在 m 和 n 范围内的水仙花数。

输入描述
输入数据有多组,每组占一行,包括两个整数 m 和 n。(100<=m<=n<=999)

输出描述
对于每个测试实例,要求输出所有在给定范围内的水仙花数,就是说,输出的水仙花数必须大于等于 m,并且小于等于 n,如果有多个,则要求从小到大排列在一行内输出,之间用一个空格隔开;如果给定的范围内不存在水仙花数,则输出 no;每个测试实例的输出占一行。

输入
100 120
300 380

输出
no
370 371

Java 代码

import java.io.IOException;
import java.util.Scanner;

public class Solution {
    public static void main(String[] args) throws IOException {
        Scanner sc = new Scanner(System.in);
        int[] number = {153, 370, 371, 407};
        while (sc.hasNext()) {
            int m = sc.nextInt();
            int n = sc.nextInt();
            String s = "";
            for (int i = 0; i < number.length; i++) {
                if (number[i] >= m && number[i] <= n) {
                    s = s + number[i] + " ";
                }
            }
            if ("".equals(s)) {
                System.out.println("no");
            } else {
                System.out.println(s.substring(0, s.length() - 1));
            }
        }
    }
}

参考资料

相关文章:

  • 2022-01-01
猜你喜欢
  • 2022-02-28
  • 2021-04-02
  • 2022-12-23
  • 2022-12-23
  • 2021-06-14
相关资源
相似解决方案