HNU JAVA 吸血鬼数字
2021/12/14 17:18:54
本文主要是介绍HNU JAVA 吸血鬼数字,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
【问题描述】吸血鬼数字是指位数为偶数的数字,可以由一对数字相乘得到,这对数字各包含乘积的一半位数的数字,数字选取后可任意排序,例如: 1260=21×60 1827=21×87 2187=27×81。写出一个程序,找出4位数的所有吸血鬼数字。
【输入形式】无
【输出形式】输出所有的吸血鬼数字,数字之间已空格分隔。
【样例输入】无
【样例输出】1260 1395 1435 1530 1827 2187 6880
总体思路:
其实四位的吸血鬼数字只有上述七个,第一遍做的时候图省事直接输出上面七个数,结果得了满分。回过头来还是得解决一下这道题吧,具体代码分析见代码框即可。
代码如下:
package week2.demo; import java.util.Arrays; //吸血鬼数字 public class Hwork7 { public static void main(String[] args) { String[] str1, str2 ; int[] ans = new int[7]; int pro, sum = 0; for (int i = 10; i < 1000; i++) { for (int j = i; j < 1000; j++) { pro = i * j; int lengthi = String.valueOf(i).length(); int lengthj = String.valueOf(j).length(); // 排除小于1000和大于9999的数字 if (pro < 1000 || pro > 9999 || lengthi != lengthj) continue; // 将乘积和乘数转换为字符串数组 str1 = String.valueOf(pro).split(""); str2 = (String.valueOf(i) + String.valueOf(j)).split(""); // 对字符串数组进行排序 Arrays.sort(str1); Arrays.sort(str2); // 比较两个数组 if (Arrays.equals(str1, str2)) { ans[sum] = pro; sum ++; } } } Arrays.sort(ans); for(int g = 0; g < sum; g++){ System.out.print(ans[g] + " "); } } }
这篇关于HNU JAVA 吸血鬼数字的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-19永别了,微服务架构!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?