`
jcs130
  • 浏览: 131693 次
  • 性别: Icon_minigender_1
  • 来自: Ottawa
社区版块
存档分类
最新评论

吸血鬼数字JAVA程序

 
阅读更多

看《Thinking in Java》,第四章最后面的那个练习题(练习10)吸血鬼数字:

  吸血鬼数字是指位数为偶数的数字,可以由一对数字相乘而得到,而这对数字各包含乘积的一半位数的数字,其中从最初的数字中选取的数字可以任意排序。以两个0结尾的数字是不允许的,例如,下列数字都是“吸血鬼”数字:

  1260 = 21 * 60
  1827 = 21 * 87
  2187 = 27 * 81

自己写的代码,算法比较简单,但还是达到要求:

 

public class xxgNUM {
	/**
	 * 判断
	 * 
	 * @param num
	 * @return
	 */
	private boolean xxg(int num) {
		int a[] = new int[4];
		// 千位
		a[0] = (int) num / 1000;
		// 百位
		a[1] = (int) ((num - a[0] * 1000) / 100);
		// 十位
		a[2] = (int) ((num - a[0] * 1000 - a[1] * 100) / 10);
		// 个位
		a[3] = (int) (num - a[0] * 1000 - a[1] * 100 - a[2] * 10);
		// 如果后两位是0,直接返回
		if (a[2] == 0 && a[3] == 0) {
			return false;
		}
		// 脚标全排列
		for (int i = 0; i < 4; i++) {
			for (int j = 0; j < 4; j++) {
				for (int k = 0; k < 4; k++) {
					for (int l = 0; l < 4; l++) {
						// 四个数不重复
						if (i != j && i != k && i != l && j != k && j != l
								&& j != l && k != l) {
							int n1 = a[i] * 10 + a[j];
							int n2 = a[k] * 10 + a[l];
							if (n1 * n2 == num) {
								System.out.println(num + "=" + n1 + "x" + n2);
								return true;
							}
						}
					}
				}
			}
		}
		return false;
	}

	// 程序入口
	public static void main(String[] args) {
		xxgNUM xxg = new xxgNUM();
		for (int num = 1000; num < 10000; num++) {
			xxg.xxg(num);
		}
	}
}

 

四位数一共有七组:

 

1260=21x60

1395=15x93

1435=41x35

1530=51x30

1827=87x21

2187=27x81

6880=86x80

分享到:
评论

相关推荐

    4位吸血鬼数字

    在Java中实现4位吸血鬼数字的程序,我们需要首先了解基本的数字处理和数组操作。以下是一些相关的知识点: 1. **数字表示与操作**:Java中的整数类型如int或long可以用来存储吸血鬼数字。我们通常使用int处理4位数...

    1-10000吸血鬼数字

    在给定的代码片段中,作者通过一个简单的Java程序实现了对1到10000之间所有可能的吸血鬼数字的查找。主要逻辑是使用两层嵌套循环,外层循环遍历从1到9999的所有数字,内层循环遍历当前外层循环变量到9999的所有数字...

    JAVA求吸血鬼数字

    吸血鬼数字是指位数为偶数的数字,可以由一对数字相乘得到,而这对数字各包含乘积的一半位数的数字,其中从最初的数字中选取的数字可以任意排序。以2个0结尾的数字是不...本程序就是如何找出4位数的所有的吸血鬼数字。

    Java实现吸血鬼数字

    在这个问题中,我们将探讨如何使用Java编程语言来实现找到所有四位吸血鬼数字的方法,并比较三种不同的算法效率。 首先,我们可以采用暴力枚举法,遍历所有四位数并检查它们是否为吸血鬼数字。这种方法是最直观的,...

    java 吸血鬼程序

    java 吸血鬼程序 学习java必须要学习的经典案例,加油学习把

    c语言 吸血鬼数字简单源码

    吸血鬼数字是指位数为偶数的数字,可以由一对数字相乘而得到,而这对数字各包含乘积的一半位数的数字,其中从最初的数字中选取的数字可以任意排序。以两个0结尾的数字是不允许的,例如,下列数字都是“吸血鬼”数字...

    JAVA吸血鬼数字算法

    THINK IN JAVA上的课后题,只是寻找4位数的。

    Save The Vampire 拯救吸血鬼 - Unity建造吸血鬼城堡逃脱游戏项目源码C#

    Save The Vampire 拯救吸血鬼 - Unity建造吸血鬼城堡逃脱游戏项目源码C# 支持Unity版本2019.427f1及以上 概述 拯救吸血鬼是一款大胆的游戏,你以疯狂的速度在城堡的路径上奔跑,通过选择路径图案来建造最大的城堡...

    吸血鬼数字

    吸血鬼数字的三种实现方法,及其运行速度。最后一种绝对的好方法。java编程吸血鬼数字答案。

    flash吸血鬼2.4破解版.zip

    用鼠标点击左边的定位器不要松手,然后移动到目标窗口,松手,FLASh吸血鬼将对目标进行搜索,为你找出所有可用的FLASHFlash吸血鬼2.4是在2.3版的基础上优化了搜索技术,实现了更快的搜索速度,经过测试,目标进程中...

    1-10000中的吸血鬼数组合

    在给定的压缩包文件中,"复件 1-10000两数相乘的所有吸血鬼数字.txt"很可能是包含了1到10000所有吸血鬼数对的列表,这样的文件可以用于验证自己的程序结果或进行进一步的分析。而另外两个文件"复件 新建 文本文档6....

    swf吸血鬼 专门下载网页中的flash文件

    **SWF吸血鬼:专业下载网页Flash文件的利器** 在互联网早期,Flash技术曾广泛应用于网站设计,尤其是动画和游戏领域。为了便于用户离线欣赏这些内容,开发者们创造了一系列工具,其中“SWF吸血鬼”就是一款专注于...

    Flash吸血鬼破解版

    Flash吸血鬼是一个用于吸取Flash的工具,它可以帮助您从应用程序或者浏览器中获得受保护的Flash。  不论您想得到的Flash采用何种方式保护,Flash吸血鬼都能轻松的把它吸出来,您只需用Flash吸血鬼的定位器锁定需要...

    C++中华吸血鬼新的代码

    中华吸血鬼新的代码.rar中华吸血鬼新的代码.rar中华吸血鬼新的代码.rar中华吸血鬼新的代码.rar中华吸血鬼新的代码.rar中华吸血鬼新的代码.rar中华吸血鬼新的代码.rar中华吸血鬼新的代码.rar中华吸血鬼新的代码.rar...

    flashk吸血鬼完2.2无水印完美专业破解版

    flashk吸血鬼完2.2无水印完美专业破解版

    吸血鬼骑士占卜游戏。

    标题中的“吸血鬼骑士占卜游戏”表明这是一个与热门动漫《吸血鬼骑士》相关的游戏,而游戏的形式则是占卜。占卜游戏通常是指通过某种随机或预先设定的规则来预测或揭示未知信息,这类游戏往往具有娱乐性和趣味性,...

    Survivor.IO 源码 类吸血鬼幸存者项目

    《Survivor.IO》是一款以吸血鬼幸存者为主题的独立游戏,其源码为我们提供了深入理解游戏开发过程和实现机制的机会。在这个项目中,开发者并未包含与“dots”相关的部分,这可能意味着游戏的核心逻辑、画面渲染或者...

    swf吸血鬼 进程提取工具

    在数字化时代,SWF(ShockWave Flash)文件广泛应用于网页和应用程序中,展示丰富的多媒体内容。然而,有时我们需要从运行的进程中提取这些SWF文件,例如为了分析、调试或保存内容。这时,“SWF吸血鬼”进程提取工具...

    Flash吸血鬼Flash

    "Flash吸血鬼.exe"可能是这个恶意软件的可执行文件名,".exe"是Windows操作系统下的可执行文件扩展名,通常表示一个程序或者病毒。如果用户不慎运行了这个文件,它可能会在用户的电脑上执行恶意操作,比如窃取个人...

Global site tag (gtag.js) - Google Analytics