三羊献瑞
题目:
观察下面的加法算式:
祥 瑞 生 辉
+ 三 羊 献 瑞
三 羊 生 瑞 气
package com.itheima.Test;
public class _三羊生瑞 {
public static boolean isOk(int x1,int x2,int i,int j,int k,int l,int m,int n,int o){
int sum=x1+x2;//五位数
if(sum<10000)return false;//不是五位数直接false
int a=sum%10;//取出个位数
if(a==i||a==j||a==k||a==l||a==m||a==n||a==o)return false;//不满足各不相同的条件直接退出
sum/=10;
a=sum%10;//取出十位数
if(a!=j) return false;//十位数不等于瑞字
sum/=10;
a=sum%10;//取出百位数
if(a!=k)return false;//十位数和生字不匹配false
sum/=10;
a=sum%10;//取出千位数
if(a!=n)return false;//千位数和羊字不匹配则false
sum/=10;
a=sum%10;//取出万位数
if(a!=m)return false;//千位数和三字不匹配则false
return true;
}
public static void main(String[] args) {
for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
if(i!=j) for(int k =0;k<10;k++){
if(k!=i&&k!=j)for(int l=0;l<10;l++){
if(l!=i&&l!=j&&l!=k)for(int m=0;m<10;m++){
if(m!=i&&m!=j&&m!=k&&m!=l)for(int n=0;n<10;n++){
if(n!=i&&n!=j&&n!=k&&n!=l&&n!=m)for(int o=0;o<10;o++){
if(o!=i&&o!=j&&o!=k&&o!=l&&o!=m&&o!=n) {
int x1 = i * 1000 + j * 100 + k * 10 + l;//四位数
int x2 = m * 1000 + n * 100 + o * 10 + j;//四位数
if (isOk(x1, x2, i, j, k, l, m, n, o)) {
System.out.println(x1);//四位数
System.out.println(x2);//四位数
System.out.println(x1 + x2);//五位数
}
}
}
}
}
}
}
}
}
}
}