华为OD机试 -水仙花数(Java) | 机试题+算法思路+考点+代码解析 【2023】
2023-09-11 14:20:21 时间
水仙花数
题目
所谓水仙花数,是指一个n位的正整数,其各位数字的n次方和等于该数本身。例如153是水仙花数,153是一个3位数,并且153 = 111 + 555 + 333
输入描述:
第一行输入一个整数n,表示一个n位的正整数。n在3到7之间,包含3和7。[3,7]
第二行输入一个正整数m,表示需要返回第m个水仙花数。
输出描述:
返回长度是n的第m个水仙花数。个数从0开始编号。
若m大于水仙花数的个数,返回最后一个水仙花数和m的乘积。
若输入不合法,返回-1。
示例1
输入
3 0
输出
153
说明
153是第一个水仙花数
解题思路
我们可以在main方法中,使用Scanner类获取输入,并使用Integer.parseInt方法将字符串转换成int类型,判断输入的n是否超过7或小于3,若是,就直接输出-1,否则使用for循环和乘法操作计算begin和end,然后使用check方法检查是否满足条件,若满足条件,则count+1,并判断count是否等于m,若是,就打印j,若不是,就打印-1,最后捕获异常并打印false。此代码使用Integer.parseInt、for循环和System.out
相关文章
- [Java基础] java多线程关于消费者和生产者
- [Java基础] java的守护线程与非守护线程
- Java中的subList方法
- java实现遍历树形菜单方法——设计思路【含源代码】
- 编写高质量代码改善java程序的151个建议——[110-117]异常及Web项目中异常处理
- Java实现 LeetCode 678 有效的括号字符串(暴力+思路转换)
- Java实现 LeetCode 672 灯泡开关 Ⅱ(数学思路问题)
- Java实现 LeetCode 47 全排列 II(二)
- Java实现 LeetCode 48 旋转图像
- java实现报数游戏
- Java实现 蓝桥杯 历届试题 矩阵翻硬币
- Java实现Catenyms(并查集+dfs+欧拉回路)
- Java实现 蓝桥杯VIP 算法训练 数的划分
- (Java实现) 洛谷 P1387 最大正方形
- Java 蓝桥杯 算法训练 字符串的展开 (JAVA语言实现)
- Java 蓝桥杯 算法训练 字符串的展开 (JAVA语言实现)
- Java 蓝桥杯 算法训练 字符串的展开 (JAVA语言实现)
- Java通过mysql-connector-java-8.0.11连接MySQL Server 8.0遇到的几个问题
- 【JAVA】 03-Java中的异常和包的使用
- macos:安装java 17.0.6(android studio报错:Unable to locate a Java Runtime.)
- 【JAVA】java中split以"." 、""、“|”分隔字符串
- 【JAVA】java中的length和length()
- [Java Spring Data] JPA Example with unit test
- Java List序列化的实现
- 当年的Java考试:JAVA&移动应用&大数据-大三-社区疫苗接种管理系统(全部源码·保姆式呵护)
- Java之接口的静态方法的定义和使用
- 一文详解java线程池 详解Java线程池的七个参数 详解池化技术 java如何选择核心线程数 详解Java线程池的拒绝策略
- Java程序猿从笨鸟到菜鸟之(九十二)深入java虚拟机(一)——java虚拟机底层结构具体解释
- Java开发技术之成为高级java工程师必须学习的三个技术
- 【java】Java 继承