十一选五 胆拖 中奖 算法

2014-11-24 09:07:04 · 作者: · 浏览: 1
十一选五 胆拖 中奖 算法
以前的算法是 二中二一个类 三中三 一个类 .. . . 并且算法到后面 写得很长 主要原因是 他把该有多少注 每注进行计算是否中奖的
这个算法是先计算是否中奖 然后 根据中奖情况(胆码中的个数 和 拖码 中的个数来计算总中奖注数 ) 并且 拖码全部用这个算法都行
//此代码不全
package com.sscgameservice.manager.lottery.renxuan.dantuo;  
  
import java.math.BigDecimal;  
  
import com.sscgameservice.manager.lottery.Lottery;  
import com.sscgameservice.model.LotteryBean;  
  
public class RXDTBASELottery  extends Lottery{  
    /** 
     * 任选胆拖 
     */  
      
    private int q; // 几中几    二q中h二  q=2 h=2  
    private int h;  
      
      
      
    public void setQ(int q) {  
        this.q = q;  
    }  
  
    public void setH(int h) {  
        this.h = h;  
    }  
  
      
    //计算中奖注数      strBuy 为开奖号码 中间用 符号链接      
    private  BigDecimal jisuanZhuShu(String[] danMa, String[] tuoMa, String strBuy) {  
        int FlagDM = 0;  
        int FlagTM = 0;  
        for (String string : tuoMa) {  
            if(strBuy.indexOf(string.replace(" ", ""))!=-1){  
                FlagTM++;  
            }  
        }  
        for (String string : danMa) {  
            if(strBuy.indexOf(string.replace(" ", ""))!=-1){  
                FlagDM++;  
            }  
        }  
        //  
        if(FlagDM+FlagTM >
= h && FlagTM >= 1 && FlagDM >= 1 && danMa.length-FlagDM <= q-h ){ //中奖 int zhushu = 1; if(h!=5){ for(int i = FlagTM; i > 1;i--){ zhushu*=i; } for(int i = FlagTM-(h-FlagDM); i>1;i--){ zhushu/=i; } for(int i = h-FlagDM; i>1;i--){ zhushu/=i; } } return new BigDecimal(zhushu); //中奖注数 }else{ //没中奖 } return new BigDecimal("0"); } }