水仙花数
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