java 蓝桥杯算法训练 水仙花(题解)

试题 算法训练 水仙花

资源限制
时间限制:1.0s 内存限制:256.0MB
  水仙花数
问题描述
  判断给定的三位数是否 水仙花 数。所谓 水仙花 数是指其值等于它本身 每位数字立方和的数。例 153 就是一个 水仙花 数。 153=13+53+33
输入格式
  一个整数。
输出格式
  是水仙花数,输出"YES",否则输出"NO"(不包括引号)
样例输入
123
样例输出
NO
数据规模和约定
  一个三位的整数,否则输出"NO"
题解:
1.用求余求出最后一位数
2.然后除10,将已经求的最后一位去掉

import java.util.Scanner;

public class 水仙花 {

	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);	//此类用于控制台读取数据
		int n=sc.nextInt();					//调用方法在控制台读取一个int的整数
		int a=n;	//用来取值
		int sum=0;	
		while(a>0)
		{
			int b=a%10;	//求余拿最后一个个位数
			b=b*b*b;
			sum+=b;
			a=a/10;		//例子:123 ,123/10=12,12/10=1,
		}
		if(sum==n)		//将个位数的立方和相加后和n比较
		{
			System.out.print("YES");
		}else
		{
			System.out.print("NO");
		}

	}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值