zoukankan      html  css  js  c++  java
  • 水仙花数

    水仙花数

    题目描述:

    春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的:
    “水仙花数”是指一个三位数,它的各位数字的立方和等于其本身,比如: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;
        }
    }
  • 相关阅读:
    vue+springboot+element+vue-resource实现文件上传
    使用bfg快速清理git历史大文件
    git clone异常 【fatal: protocol error: bad line length character: Inte】
    excel 一次删除所有空行
    vim编辑器
    prometheus安装
    递归计算分波那契数列和阶乘
    如何理解线程安全?
    创建线程的方式
    为什么说一个对象是线程安全的?
  • 原文地址:https://www.cnblogs.com/limeina/p/6694374.html
Copyright © 2011-2022 走看看