• 水仙花数


    水仙花数

    题目描述:

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

    输入

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

    输出

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

    样例输入

    100 120
    300 380

    样例输出

    no
    370 371

    import java.util.*;
    public class Main
    {
        public static void main(String[] args)
        {
            Scanner sc = new Scanner(System.in);
            int m = sc.nextInt();
            int n = sc.nextInt();
            
            List<Integer> myList = new ArrayList<Integer>();
            
            for(int i = m; i <= n; i++)
            {
                boolean isNar = isNarcissusNumber(i);
                if(isNar)
                    myList.add(i);
            }
            
            if(myList.isEmpty())
                System.out.print("no");
            
            for(int i = 0; i < myList.size(); i++)
            {
                if(i == myList.size()-1)
                    System.out.println(myList.get(i));
                else
                    System.out.println(myList.get(i) + " ");
            }
    
        }
        public static boolean isNarcissusNumber(int k)
        {
            String s = k + "";
            int sum = 0;
            for(int i = 0; i < s.length(); i++)
            {
                sum += Math.pow(s.charAt(i) - '0',3);
            }
            if(sum == k)
                return true;
            return false;
        }
    }
  • 相关阅读:
    .Net里的Attribute 学习
    浅谈并发与并行(一)
    Asp.net Mvc4默认权限详细(下)
    Enum是如何用的?
    指针与引用
    栈与队列
    mini2440裸机之I2C
    解决Delphi MDI 闪烁问题(使用WM_SETREDRAW锁屏后进行处理)
    DelphiXE 显示GIF动画
    参数传递方法(Delphi1.0与win16API使用pascal方法,即从左到右)
  • 原文地址:https://www.cnblogs.com/limeina/p/6694374.html
Copyright © 2020-2023  润新知