將1到9這九個數字填入xxxx*x=xxxx組成一個乘法算式,要求九個數字必須都填入且任何數字都不能重復填入


java實現代碼如下:

import java.util.HashSet;
import java.util.Set;

public class TestMultiplication {
public static void main(String[] args) {
for(int i=2;i<=8;i++){
for(int j=1234;j<=4938;j++){
Set<String> set=new HashSet<String>();
String iStr=Integer.toString(i);
String jStr=Integer.toString(j);
char[] jChar=jStr.toCharArray();
set.add(iStr);
for(int n=0;n<jChar.length;n++){
set.add(String.valueOf(jChar[n]));
}
if(set.size()==5){
int product=j*i;
if(product<=9876){
char[] pChar=String.valueOf(product).toCharArray();
for(int m=0;m<pChar.length;m++){
set.add(String.valueOf(pChar[m]));
}
boolean isContains0=set.contains("0");
if(set.size()==9&&isContains0==false){
System.out.println("結果OK,結果為:"+String.valueOf(j)+"*"+String.valueOf(i)+"="+String.valueOf(product));
}
}
}
}
}
}
}

結果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM