public static void main(String[] args) {
Map map = new HashMap();
map.put("0268", "0A1B");
map.put("9631", "0A1B");
map.put("4172", "0A2B");
map.put("3425", "1A1B");
map.put("5746", "0A2B");
map.put("7529", "0A1B");
List allResults = new CopyOnWriteArrayList();
for(int i = 0;i < 10;i++){
for(int j = 0; j < 10;j++){
for(int a = 0; a < 10;a++){
for(int b = 0; b < 10;b++){
if(i != j && i != a && i != b && j != a && j !=b && a!= b){
allResults.add(i + "" + j + "" + a + "" + b);
}
}
}
}
}
for(String key : map.keySet()){
String value = map.get(key);
int a = Integer.valueOf(value.substring(0,1));
int b = Integer.valueOf(value.substring(2,3));
for(String result : allResults){
int countA = 0;
int countB = 0;
for(int i = 0; i < key.length();i++){
if(key.charAt(i) == result.charAt(i)){
countA++;
continue;
}else{
for(int j = 0;j < result.length(); j++){
if(key.charAt(i) == result.charAt(j) && i != j){
countB++;
continue;
}
}
}
}
if(a != countA || b != countB){
allResults.remove(result);
}else{
}
}
}
for(String result : allResults){
System.err.println(result);
}
}
我要回答|搜索相关资料