package cn.lifx.test;
public class OneToNineTest
{
public static void main(String[] args)
{
OneToNineTest test = new OneToNineTest();
test.findNum();
}
public void findNum()
{
int num1 = 0;
int num2 = 0;
int num3 = 0;
int a1, a2, a3, b1, b2, b3; // for method 1 used
for(int i=1; i<=3; i++)
{
for(int j=1; j<=9; j++)
{
for(int k=1; k<=9; k++)
{
if(j!=i && k!=j && k!=i)
{
num1 = 100 * i + 10 * j + k;
num2 = num1 * 2;
num3 = num1 * 3;
//method 1
a1 = num2/100;
a2 = (num2/10)%10;
a3 = num2%10;
b1 = num3/100;
b2 = (num3/10)%10;
b3 = num3%10;
if(num3<1000 && Diff(a1, a2, a3) && Diff(b1, b2, b3))
{
if(Diff(i, j, k, a1, a2, a3, b1, b2, b3))
{
System.out.println("The three numbers are : " + num1 + " " + num2 + " " + num3);
}
}
//method 2
// if(num3<1000 && Diff(num1, num2) && Diff(num1, num3) && Diff(num2, num3))
// {
// System.out.println("The three numbers are : " + num1 + " " + num2 + " " + num3);
// }
}
}
}
}
}
//method 1
public boolean Diff(int a1, int a2, int a3, int b1, int b2, int b3, int c1, int c2, int c3)
{
boolean flag = false;
if(Diff(a1, b1, b2, b3) && Diff(a2, b1, b2, b3) && Diff(a3, b1, b2, b3) &&
Diff(a1, c1, c2, c3) && Diff(a2, c1, c2, c3) && Diff(a3, c1, c2, c3) &&
Diff(b1, c1, c2, c3) && Diff(b2, c1, c2, c3) && Diff(b3, c1, c2, c3))
{
flag = true;
}
return flag;
}
//method 2
public boolean Diff(int num1, int num2)
{
boolean flag = false;
int a1 = num1/100;
int a2 = (num1/10)%10;
int a3 = num1%10;
int b1 = num2/100;
int b2 = (num2/10)%10;
int b3 = num2%10;
if(Diff(a1, a2, a3) && Diff(b1, b2, b3) &&
Diff(a1, b1, b2, b3) && Diff(a2, b1, b2, b3) && Diff(a3, b1, b2, b3))
{
flag = true;
}
return flag;
}
//public use
public boolean Diff(int a, int b, int c)
{
boolean flag = false;
if(a!=b && a!=c && b!=c && a!=0 && b!=0 && c!=0)
flag = true;
return flag;
}
public boolean Diff(int a, int b, int c, int d)
{
boolean flag = false;
if(a != b && a != c && a != d)
flag = true;
return flag;
}
}
输出为:
The three numbers are : 192 384 576
The three numbers are : 219 438 657
The three numbers are : 273 546 819
The three numbers are : 327 654 981
分享到:
相关推荐
标题中的“一道算法题,亏在二叉树的构造和递归算法上了”暗示了这个问题主要涉及计算机科学中的数据结构,特别是二叉树,以及使用递归算法解决相关问题。在编程领域,二叉树是一种基础且重要的数据结构,常用于实现...
贪心算法 每天一道算法题:分治算法,回归算法,贪心算法,回溯算法.zip
### hadoop2面试题 - 2012腾讯笔试的一道算法题 #### 背景与题目概述 本文档提供了2012年腾讯笔试中一道关于字符串处理的算法题,该题目要求将字符串中的所有大写字母移动到字符串的末尾,同时保持其他字符的相对...
board=Algorithm&gid=8898发信人: snoowball (Snowball), 信区: Algorithm标 题: Re: 问一道算法题
说实话,一天做完一道算法题还是很吃力的,并且每个人都自己的规划和任务,也不是都有时间刷题。所以,大家可以根据具体情况来安排个人时间,有时间了多做一些,没时间就少做或不做。 目前构想的题目知识模块有:
在准备面试时,掌握一些常见的算法题是至关重要的,尤其是对于技术面试来说。这份压缩包“考试类精品--总结一下面试常考的算法题”显然为面试者提供了一个宝贵的资源,帮助他们提升自身的编程和算法解决能力。在这个...
每天一道算法题 为了应付面试,开始写博客,准备开三个系列,第一个 JS算法系列,主要整理一些面试过程中常见的算法题 ; 第二个 ECMAScript规范解析,主要是想从ES规范的角度来解析JS代码的实际执行过程,只有真正...
详细解析与解答:对于每一道算法题,提供清晰、详尽的解题思路、代码实现以及时间复杂度分析是非常重要的。这不仅能帮助用户理解问题本质,还能学习到高效的解决策略。 互动学习平台:一些资源还提供了在线的编程...
12-02-28网易笔试一道算法题,附件代码是我自己的解题
这个问题是去哪儿网2014年笔试中的一道算法题,其目标是编写一个函数`RP2AP`,接收一个相对路径字符串作为输入,并返回其对应的绝对路径。 该函数的核心逻辑如下: 1. 首先,检查输入和输出指针是否为NULL,如果...
每日一道算法题 2021-1-16, 阅读【算法图解】,刷一道二分查找的题目,. 2021-2-8,Leetcode,题号15,刷一道数组的题目,. 2020-2-17,Leetcode,题号16,刷一道数组的题目, 2020-2-18,Leetcode,题号18,刷一道...
描述中的“AlgorithmSet”和“每天一道算法题”表明这是一个系统化的算法学习资源,可能是某个开源项目或者学习计划,旨在帮助用户通过每天解决一道算法题来提升自己的编程和算法能力。"Algorithm.playground"可能是...
【标题】"YunDang-Algorithm:群策群力,每日解决一道算法题" 提供了一个关于算法学习和实践的项目,旨在帮助开发者通过每天解决一个算法问题来提升自己的编程技能。该项目的核心理念是集体智慧,鼓励团队成员共同...
LeetCode Everyday项目就是这样一个极好的资源,它鼓励开发者每天都解决一道算法题,以此来保持对编程的热情和敏锐度。这个项目不仅局限于LeetCode上的题目,而是涵盖了更广泛的算法题目,帮助程序员拓宽视野,深入...
坚持每天刷一道算法题,冲鸭!!! day1 验证回文字符串 day2 亲密字符串 柠檬水找零 day3 反转字符串中的单词 day4 三数之和 day5 数组中的第k个最大元素 day6 环形链表II day7 无重复字符的最长子串 day8 排序链表...
Code4God:微信平台一天一道算法题的服务器源码,部署在百度云