`
MouseLearnJava
  • 浏览: 465973 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

有时候,将数据的比较转换成字符串比较会更加直观

阅读更多
有时候,将数据的比较转换成字符串比较会更加直观。

请大家看下面的例子--实现吸血鬼数



所谓“吸血鬼数字”就是指位数为偶数的数字),可以由一对数字相乘而得到,而这对数字各包含乘积的一半位数字。

package my.example.numbers;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/**
 * 
 * @author Eric
 * 
 */
public class VampireNumberExample1 {
	public static void main(String[] args) {

		/**
		 * 为了能够是去除相同的吸血鬼数。 比如: 21 x 60 = 1260 = 60 x 21
		 * 
		 */
		List<Integer> uniqueVampireNumber = new ArrayList<Integer>();

		for (int i = 10; i <= 99; i++) {
			for (int j = 10; j <= 99; j++) {
				int sum = i * j;
				if (sum >= 1000 && sum <= 9999) {
					String[] str = String.valueOf(sum).split("");
					Arrays.sort(str); // 按照字符的升序排列
					String[] str1 = (String.valueOf(i) + String.valueOf(j))
							.split("");
					Arrays.sort(str1); // 对两个Arrays进行比较
					if (Arrays.equals(str, str1)) {
						if (!uniqueVampireNumber.contains(sum)) {
							uniqueVampireNumber.add(sum);
							System.out.printf("第%d组:%d + %d = %d\n",
									uniqueVampireNumber.size(), i, j, sum);
						}
					}
				}
			}
		}
	}
}


输出结果:
第1组:15 + 93 = 1395
第2组:21 + 60 = 1260
第3组:21 + 87 = 1827
第4组:27 + 81 = 2187
第5组:30 + 51 = 1530
第6组:35 + 41 = 1435
第7组:80 + 86 = 6880

转载请注明:http://www.wangmengjun.com/showArticleDetail.do?articleId=40
0
0
分享到:
评论
2 楼 healer_kx 2014-07-04  
是的,以前我们玩GWBasic的时候也是这么干的。
1 楼 tjj006 2014-07-04  
这个东东没神马用处吧……

相关推荐

    MATLAB 直接赋值构造字符串示例

    有时候我们需要将数值或其他类型的数据转换为字符串形式。MATLAB中的`sprintf`函数可以帮助我们完成这一任务。它类似于C语言的`printf`,允许我们以指定的格式插入变量。例如,`num = 3.14159; formattedStr = ...

    UTF8字符串转换工具绿色版

    UTF8作为最广泛使用的Unicode编码,能表示几乎所有的全球语言字符,但有时候我们需要将UTF8字符串与其他编码如GBK、BIG5等进行互换,这时这款绿色版的UTF8转换工具就能派上用场。 该工具的主要功能包括: 1. **多...

    字符串相似度算法 levenshtein distance 编辑距离算法

    因此,有时候我们会设定一个阈值来判断两个字符串是否足够相似。 总的来说,编辑距离算法提供了一种量化比较字符串相似度的有效手段,是理解和处理文本数据的重要工具。在阅读提供的“ld.htm”文件后,可以更深入地...

    JPG图片转化成十六进制数据的程序

    在IT领域,有时候我们需要将二进制数据如图片文件转换为文本格式,便于查看或处理。这个场景中,我们讨论的是一个使用C++在Visual Studio 2010环境下实现的程序,它能够将JPG图片文件转化为包含十六进制数据的文本...

    delphi 判断字符串是否为整数.rar

    在编程领域,尤其是在 Delphi 开发环境中,有时候我们需要对用户输入的数据进行验证,确保它们符合特定的格式或类型。在本示例中,我们关注的是如何判断一个字符串是否表示一个整数。这个问题在处理用户输入或者解析...

    字符串处理- 回文串相关- 回文串的判断.rar

    比较两个指针指向的字符,如果在任何时候它们不相等,则可以立即判断该字符串不是回文串。如果两个指针相遇或者交叉,且所有中间的字符都相等,那么该字符串就是回文串。这种方法的时间复杂度为O(n)。 2. **翻转法*...

    Angularjs 双向绑定时字符串的转换成数字类型的问题

    特别是当模型中存储的是字符串类型数据,但在视图中需要以数字类型进行运算的时候。如果不进行适当的处理,字符串类型的变量在进行运算时会被当做字符串拼接处理,而不是数值相加,这显然不是我们所期望的结果。 在...

    Python 字符串转换为整形和浮点类型的方法

    字符串转换为整形(int)和浮点类型(float)是经常需要进行的操作,特别是在处理输入数据时,因为很多时候从用户输入或是外部文件中读取的数据首先都是以字符串的形式存在的。正确的类型转换能够保证后续数据处理和...

    JavaScript 字符串与数组转换函数[不用split与join]

    这两个函数的使用方法非常直观,例如,如果你有一个字符串 `var myStr = "apple,banana,grape"`,并希望以逗号为分隔符将其转换为数组,可以这样调用 `StringToArray(myStr, ",")`。相反,如果你有一个数组 `var ...

    cpp代码-C/C++ 字符串匹配算法时间复杂度比较

    Rabin-Karp算法使用哈希函数将字符串转化为数字,然后比较这些数字来快速判断是否匹配。如果哈希值相同,再进行精确比较。最坏情况时间复杂度是O(nm),但平均情况可以是O(n + m)。 5. **Sunday算法** Sunday算法...

    sql动态转换行列和字符的分割

    在SQL中,有时候我们需要对存储在单个字段中的字符串进行处理,如分割字符串为多个行或列。例如,一个字段可能包含逗号分隔的值,我们可能需要将这些值拆分为单独的行。这可以通过`STRING_SPLIT`函数(在SQL Server...

    JS 特殊数据类型的 == 和 === 比较

    0 == "" // true,因为0转换为字符串是空字符串 null == undefined // true,因为在比较时它们被视为相等 ``` 然而,这种类型转换并不总是直观的,可能导致意外的结果,因此在编写严谨的代码时,通常建议避免使用 `...

    串口通信入门

    3. 发送数据(Write):将数据字节或字符串写入串口,实际会按照设定的参数将数据转换为串行信号发送出去。 4. 接收数据(Read):从串口读取数据,可能需要根据协议处理数据帧的起始和结束标志,以及错误校验。 5...

    EXE 转化为 txt的工具

    在IT领域,有时候我们需要将可执行文件(EXE)转换为文本文件(TXT),以便于分析、调试或提取其中的数据。"EXE转化为txt的工具"正是满足这种需求的实用程序,它允许用户将二进制的EXE文件转换成可读的文本格式。 ...

    python爬虫万能代码-获取网页

    网页解析器有正则表达式(直观,将网页转成字符串通过模糊匹配的方式来提取有价值的信息,当文档比较复杂的时候,该方法提取数据的时候就会非常的困难)、html.parser(Python自带的)、beautifulsoup(第三方插件,...

    毕业设计:c#网络爬虫程序设计

    一、什么是爬虫 ...网页解析器有正则表达式(直观,将网页转成字符串通过模糊匹配的方式来提取有价值的信息,当文档比较复杂的时候,该方法提取数据的时候就会非常的困难)、html.parser(Python自带的)

    C#文档资料

    有时候,我们还需要将`ArrayList`中的元素合并为一个单独的字符串。这种情况下,可以使用`string.Join`方法来实现。 ```csharp ArrayList list = new ArrayList(); // 创建ArrayList对象 list.Add("aaa"); // 向...

    Matlab_16进制RGB数组变为图片

    在Matlab中,将16进制RGB数据转换为彩色图像是一项常见的任务,尤其是在处理图像数据时。16进制RGB格式是一种常见的颜色表示方法,它使用三个两位的16进制数字分别代表红色、绿色和蓝色通道的强度。本教程将详细讲解...

    python timestamp和datetime之间转换详解

    同样地,有时候我们需要将时间戳转换回更易读的日期时间字符串。下面的函数展示了如何实现这一转换: ```python def timestamp2string(timestamp): try: d = datetime.fromtimestamp(timestamp) str1 = d....

    Chrom进行显示JSON数据

    在处理JSON数据时,我们依赖于库,如Jackson或Gson,它们能将Java对象转换为JSON字符串,反之亦然。理解JSON的结构和这些库的工作原理,有助于我们编写出更高效的代码。 Jackson库提供了一系列的注解,如`@...

Global site tag (gtag.js) - Google Analytics