当前位置:首页 > 我的一些记录 > 正文内容

双色球大乐透彩票开奖号码预测项目,感觉是高级~

嗨我是海天4年前 (2021-02-16)我的一些记录676

项目一看就挺不靠谱啊,坑终端客户类型,或者说为了提高社区人气而做的机器预测单,为了软妹币,接单了。。


可是,按任务要求弄到了100%的时候,客户说了没问题,交付了,结果说有问题,说预测号码不是理想的号码。


原来给我任务的人是一个中介,而真正的客户需求是:想要做到小钱覆盖大的中奖范围。

比如双色球6+1,要求在33+16个里面选出22+8个来进行组合,得到大概30组14+4的复式投注。


后来经过反复测试,这个需求无法实现啊,至少我无法实现。

数学不太好,只能经过编程暴力测试,测试后发现,比如22+8一共有1000组6+1的组合,而2组11+8可不能完全覆盖掉这1000组6+1的组合,因为这2组11+8里面会有很多重复的6+1。


当需求是将一组22+8折合为多组14+4来达到完全覆盖22+8的6+1开奖,可能至少有几万种甚至几十万种组合才能覆盖掉这一组,当所有的14+4生成的6+1生成的开奖号码去重后,就是一组22+8



好吧,这是吐槽下客户这个需求不合理吧。。。

代码是截取的thinkphp控制器函数,数组暴力组合函数是网上找的。自己需要把dump之类的换成var_dump


    /**
     * @param $arr 需要组合数组
     * @param int $num 组合元素个数
     * @return array
     */
    private  function getSequenceAry($arr,$num=1)
    {
        $count = count($arr); //获取当前数组的元素个数
        $min   = min($count,$num);  //获取最小的 允许组合的数组元素个数
        
        if($min<1){  //如果允许组合的数组元素个数小于1, 则没有必要组合
            return false;
        }
        
        $return =[]; //返回结果用
        
        $arrRet = [];
        $max = $count-($min-1);
        for($i=0;$i<$max;$i++){
            $this->getSequenceArySub($arr,$count,$min,$i,$arrRet,$return);
        }
        
        return $return;
        
    }
    
    private  function getSequenceArySub($arr,$count,$min,$i,$arrRet=[],&$return){
        if(empty($arr) || empty($count))
            return false;
        if(1==$min){
            $arrRet[--$min] = $arr[$i];
            $return[] = $arrRet;
        }else{
            $arrRet[--$min] = $arr[$i];
            for($j = $i+1;$j<($count);$j++){
                $this->getSequenceArySub($arr,$count,$min,$j,$arrRet,$return);
            }
        }
        unset($arr);
        unset($arrRet);
    }
    
        
    public function get_combinations($arrays) {
        $result = array(array());
        foreach ($arrays as $property => $property_values) {
            $tmp = array();
            foreach ($result as $result_item) {
                foreach ($property_values as $property_value) {
                    $tmp[] = array_merge($result_item, array($property => $property_value));
                }
            }
            $result = $tmp;
        }
        return $result;
    }
    
    
    //运行这个方法
    public function test(){
        ini_set('memory_limit', '1024M');
        $memory=ini_get('memory_limit');
    
        dump('已申请内存:'.$memory);
    
        $red_array=explode(',','1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35');

        $red_array=explode(',','A,B,C,D');
        $red_array=explode(',','A,B,C,D,E,F,G,H,I,G,K,L,M,N,O,P,Q');
    
        $red_array=explode(',','1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18');
    
    
        $red_array=explode(',','1,2,3,4,5,6,7');
        $red_array=explode(',','1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18');
        $red_array=explode(',','1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20');
        $red_array=explode(',','1,2,3,4,5,6,7,8,9,10,11,12,13,14');
    
        $red_array=explode(',','1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20');
        
        
        $red_array=explode(',','1,2,3,4,5,6,7,8,9,10');
        $red_array=explode(',','1,2,3,4,5,6,7,8,9');
        $red_array=explode(',','1,2,3,4,5,6,7,8,9,10');
    
        //注意,数组个数越大,服务器性能消耗越大,这里用10个红球举例
        $red_array=explode(',','1,2,3,4,5,6,7,8,9,10');
        
        $red_ok=[];
        $temp_str = '';
        
        $ok_int=6; //开奖中奖
        
        $red_ok=$this->getSequenceAry($red_array,$ok_int);

        dump('双色球红区需要的中奖个数:'.$ok_int);
        dump('红区需组合的原始数据:'.count($red_array).'个   '.implode(',',$red_array));
    
    
        dump('-------------:');
        dump('红区可组合的中奖数据数量:'.count($red_ok));
        
        dump('红区组合样本预览:');
        $red_ok_string=[];
        foreach ($red_ok as $item){
            $temp_string=implode(',', $item);
            dump($temp_string);
            $red_ok_string[]=$temp_string;
        }
    
        dump('-------------:');
        $blue_array=explode(',','A,B,C,D');
        $blue_array=explode(',','A');
    
        $a = array('red-box' => $red_ok_string, 'blue-box' => $blue_array);
        $result=$this->get_combinations($a);
        dump('蓝区原始数据:'.count($blue_array).'个   '.implode(',',$blue_array));
        dump('双色球 红区+蓝区域 可组合的中奖数据数量:'.count($result));
        dump('双色球 红区+蓝区域 可组合样本预览:');
        foreach ($result as $item){
            $temp_string='红:'.$item['red-box'].'  蓝:'.$item['blue-box'];
            dump($temp_string);
        }
        
    }


扫描二维码推送至手机访问。

版权声明:本文由大牙的博客发布,如需转载请注明出处。

如果您有合作项目您可以选择留言给我,或加QQ 22707370 ,邮件 mail@95jw.cn


分享给朋友:

相关文章

根据SEO行业人员的需求,开发了一个原创图片系统

根据SEO行业人员的需求,开发了一个原创图片系统

如果你的网站系统需要大量配图,却没有太多好的素材,可以考虑使用本系统,可以生存大量的图片哦。使用流程大致是:找符合内容的背景图片素材,找一些符合背景的装饰贴图素材,就可以建立好图片的固定的图片模型了,...

基于fastadmin的PHP项目,一个可溯源防伪码管理系统

基于fastadmin的PHP项目,一个可溯源防伪码管理系统

以前购买东西,总觉得为啥不弄个防伪码啊,有了数字防伪码多容易确定购买的产品的真假啊,所以特别想做这个单子。。防伪码:一般是有涂层遮盖,刮一刮啥的。但是好多人确实刮开了,但是验证该防伪码的标记的二维码或...

一个兼容多个移动端平台的UniApp在线起名小程序,有需求免费使用吧!

一个兼容多个移动端平台的UniApp在线起名小程序,有需求免费使用吧!

这个程序是因为我在某平台接单了这个程序开发,价格预估错误,原计划是4天完成的东西,我发现至少需要15天。。完成这套程序的过程中,因为这哥们需求不是很强烈,我面对我的预估失误做的也很纠结呀,足足弄了20...

2019年开发的虚拟商品交易系统,算是流产了的项目

2019年开发的虚拟商品交易系统,算是流产了的项目

这个项目早期是以saas模式运营的,后来因为法律风险缘故想改成用户自己提供服务器自己保管数据,就做了这个系统。再后来,可能确实心累,没有坚持做下来,项目运营权和所有的客户打包卖给了其他人,这个半成品就...

ChatGPT的提示库,更好的使用ChatGPT

ChatGPT的提示库,更好的使用ChatGPT

文章转载自:f/awesome-chatgpt-prompts:此存储库包括 ChatGPT 提示策展,以便更好地使用 ChatGPT。 (github.com)充当 Linux 终端贡献者:&nbs...

家里小孩学拼音,于是用UniApp弄了一个辅助小孩子拼音学习和拼音组合拼读的小程序

家里小孩学拼音,于是用UniApp弄了一个辅助小孩子拼音学习和拼音组合拼读的小程序

发现自己的拼音确实不咋地,好多发音都不标准。然后上网搜啊搜,偶买噶,好多广告的学习软件,所以索性就花时间自己弄了一个。看图说话。有需要的使用的,请用微信扫描二维码,或者微信搜索小程序“怎罗拼音读写”...

评论列表

青丝影院
5个月前 (11-17)

《不再沉默》剧情片无广告高清版:https://www.jinzhuqq.com/dyvideo/24229.html

IT专家网
5个月前 (11-27)

深度揭秘:能提现的传奇**背后真相:https://501h.com/danzhiye/2024-09-19/36301.html

电影网站
5个月前 (12-15)

《武战道(无删版)》国产动漫无广告高清版:https://www.jinzhuqq.com/dyvideo/19147.html

传奇手游
4个月前 (01-03)

1.75传奇合成版**:探寻复古游戏新体验:https://501h.com/jinbi/2024-08-17/28653.html

传奇私服
4个月前 (01-05)

黑道传奇在线视频攻略大全:https://501h.com/jingpin/7516.html

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。