反正也不知道能不能中奖,就写了个随机算法;所有组合出现的次数: (33*32*31*30*29*28/6*5*4*3*2*1 )*16 = 17721088。
那就产生个17721088随机双色球,能不能中奖,看运气;
这里输出了 重复次数超过8次的号码!祝您好运!
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Random;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import com.alibaba.fastjson.JSON;
public class ShuangsqMain {
private static Integer size = 17721088;
private static Logger logger = LoggerFactory.getLogger(ShuangsqMain.class);
public static void main(String[] args) throws Exception {
Map<String, Integer> rs = new HashMap<String, Integer>();
Map<String, Integer> print = new HashMap<>();
for (int start = 1; start <= size; start++) {
List<Integer> codes = new ArrayList<Integer>();
List<Integer> redInt = new ArrayList<Integer>();
List<Integer> BlurInt = new ArrayList<Integer>();
for (int k = 1; k <= 33; k++) {
redInt.add(k);
if (k <= 16)
BlurInt.add(k);
}
while (codes.size() < 6) {
int idx = new Random().nextInt(redInt.size());
if (idx < 0)
idx = 0;
if (idx >= redInt.size())
idx = redInt.size() - 1;
codes.add(redInt.get(idx));
redInt.remove(idx);
}
Collections.sort(codes);
int idx = new Random().nextInt(BlurInt.size() - 1);
codes.add(BlurInt.get(idx));
String code = JSON.toJSONString(codes);
Integer rsInt = 0;
if (rs.containsKey(code)) {
rsInt = rs.get(code);
if (rsInt >= 8) {
if (!print.containsKey(code))
logger.info(code + "\t\t\t\t times=" + rsInt);
print.put(code, rsInt + 1);
}
}
rsInt++;
rs.put(code, rsInt);
}
for (String key : print.keySet()) {
logger.warn(key + "\t" + print.get(key));
}
}
}