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
分享到:
相关推荐
hadoop2面试题 - 2012腾讯笔试的一道算法题.pdf
考试类精品--总结一下面试常考的算法题,希望可以帮助每一位想要提升自己面试能力的同学。对于每一道算法题会总结代码、时
board=Algorithm&gid=8898发信人: snoowball (Snowball), 信区: Algorithm标 题: Re: 问一道算法题
说实话,一天做完一道算法题还是很吃力的,并且每个人都自己的规划和任务,也不是都有时间刷题。所以,大家可以根据具体情况来安排个人时间,有时间了多做一些,没时间就少做或不做。 目前构想的题目知识模块有:
贪心算法 一般来说,贪婪算法有五个组成部分: 一个候选集:从中创建一个解决方案 一个选择函数:用于选择要添加到解决方案中的最佳候选项 一个可行性函数:用于确定候选项是否可以为解决方案做出贡献 一个目标函数...
NULL 博文链接:https://wanghongxu.iteye.com/blog/1835601
每天一道算法题 为了应付面试,开始写博客,准备开三个系列,第一个 JS算法系列,主要整理一些面试过程中常见的算法题 ; 第二个 ECMAScript规范解析,主要是想从ES规范的角度来解析JS代码的实际执行过程,只有真正...
12-02-28网易笔试一道算法题,附件代码是我自己的解题
每日一道算法题 2021-1-16, 阅读【算法图解】,刷一道二分查找的题目,. 2021-2-8,Leetcode,题号15,刷一道数组的题目,. 2020-2-17,Leetcode,题号16,刷一道数组的题目, 2020-2-18,Leetcode,题号18,刷一道...
目前 需要去面试 据说面试前需要做一道算法题 所以搜集了一些leetcode的算法题共享
几乎每一次公司考试都会有一道算法题,我这有一套最常用的。
坚持每天刷一道算法题,冲鸭!!! day1 验证回文字符串 day2 亲密字符串 柠檬水找零 day3 反转字符串中的单词 day4 三数之和 day5 数组中的第k个最大元素 day6 环形链表II day7 无重复字符的最长子串 day8 排序链表...
YunDang-Algorithm 筼筜小伙伴,每日解决一道算法题
leetcode 柱状图最大矩形 AlgorithmSet 每天一道算法题 算法练习集合 Algorithm.playground 推荐学习资料:
Code4God:微信平台一天一道算法题的服务器源码,部署在百度云
对于每一道算法题会总结代码、时间复杂度以及一些好的blog排序(sort)数组(array)LintCode 373 Partition Array by Odd and EvenLintCode 144 Interleaving Positive and Negative NumbersLeetCode 54 Spiral ...
一道微软算法题很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用很有用...
背包问题