算法训练 水仙花
时间限制:1.0s 内存限制:256.0MB
水仙花数
问题描述
判断给定的三位数是否 水仙花 数。所谓 水仙花 数是指其值等于它本身 每位数字立方和的数。例 153 就是一个 水仙花 数。 153=13+53+33
输入格式
一个整数。
输出格式
是水仙花数,输出"YES",否则输出"NO"(不包括引号)
样例输入
123
样例输出
NO
数据规模和约定
一个三位的整数,否则输出"NO"
示例代码:
1 import java.util.Scanner; 2 3 public class Main { 4 public static void main(String[] args) { 5 Scanner sc = new Scanner(System.in); 6 int n = sc.nextInt(); 7 if(100 <= n || n <= 999){ //是否为三位数 8 int a = n / 100; //百位 9 int b = n % 100 /10; //十位 10 int c = n % 10; //个位 11 if(n == Math.pow(a,3)+Math.pow(b, 3)+Math.pow(c, 3)){ //判断是否为水仙花数 12 System.out.println("YES"); 13 }else{ 14 System.out.println("NO"); 15 } 16 }else{ 17 System.out.println("NO"); 18 } 19 } 20 }