c# 模拟网易足彩算法

时间:2021-08-10 02:10:19
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    //class bf
    //{
    //    /// <summary>
    //    /// 类型名
    //    /// </summary>
    //    public string name { set; get; }
    //    /// <summary>
    //    /// 总和球
    //    /// </summary>
    //    public int sum { set; get; }
    //    /// <summary>
    //    /// 相差球
    //    /// </summary>
    //    public int diff { set; get; }
    //    /// <summary>
    //    /// 胜平负
    //    /// </summary>
    //    public int spf { set; get; }

    //    /// <summary>
    //    /// 数据集合
    //    /// </summary>
    //    public Dictionary<string,int> maxofttt { set; get; }

    //}

    class Class1
    {
        /// <summary>
        /// 初始化 Ga di!
        /// </summary>
        public void csh()
        {
            List<bf> algo = new List<bf>();
            ;
            ; i++)
            {
                ; j < ; j++)
                {
                     && j >  || i >  && j > ) { continue; }
                    algo.Add(new bf()
                 {
                      name= i + "" + j,
                      sum= i + j,
                      diff= Math.Abs(i - j),
                      spf= i > j ?  : (i < j ?  : )
                 });
                }
            }
            Dictionary<];
             ; i--)
            {
                bf bff = algo[i];
                Dictionary<string, int> oft = new Dictionary<string, int>();
                oft.Add();
                oft.Add();
                oft.Add();
                )
                {
                    ) { oft.Add();}
                    oft.Add();
                    oft.Add();
                }
                )
                {
                    )
                    {
                        oft.Add();
                        oft.Add();
                    }
                    oft.Add();
                }
                )
                {
                    oft.Add();
                    oft.Add();
                    ) { oft.Add(); }
                }
                sus[i] = oft;
            }
        }
    }

    //var algo = this, allBf = [], len = 0, bfCheckMap = { };

    // allBf.push({ name: '3A',sum: 7, spf: 3}, { name: '1A',sum: 7,spf: 1},{ name: '0A',sum: 7,spf: 0});

    }
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp1
{
    class Program
    {
        /// <summary>
        /// 所有可能比分
        /// </summary>
        public static Dictionary<string, int>[] sus;
        /// <summary>
        /// 要遍历的次数名字!!!
        /// </summary>
        public static List<bf> algo;

        /// <summary>
        /// 初始化所有情况
        /// </summary>
        public static void csh()
        {
            algo = new List<bf>();
            ;
            ; i++)
            {
                ; j < ; j++)
                {
                     && j >  || i >  && j > ) { continue; }
                    algo.Add(new bf()
                    {
                        bileft = i,
                        biright = j,
                        name = i + "" + j,
                        sum = i + j,
                        diff = Math.Abs(i - j),
                        spf = i > j ?  : (i < j ?  : )
                    });
                }
            }
            //加上大于7的可能 默认为9
            algo.Add(, biright = , sum = , spf =  });
            algo.Add(, biright = , sum = , spf =  });
            algo.Add(, biright = , sum = , spf =  });
            sus = ];
            ; i >= ; i--)
            {
                bf bff = algo[i];
                Dictionary<string, int> oft = new Dictionary<string, int>();
                oft.Add();
                oft.Add();
                oft.Add();
                )
                {
                    ) { oft.Add(); }
                    oft.Add();
                    oft.Add();
                }
                )
                {
                    )
                    {
                        oft.Add();
                        oft.Add();
                    }
                    oft.Add();
                }
                )
                {
                    oft.Add();
                    oft.Add();
                    ) { oft.Add(); }
                }
                sus[i] = oft;
            }
        }

        static void Main(string[] args)
        {

            csh();//初始化
                  // 数据传递格式
                  // sfp 胜负平  bf 比分  rsfp 让球胜负平 sum 总球数 bqc 半全场  #后面跟倍率  & 区分玩法 ,是玩法的类型区分
                  //胜 是3  平 1  负 0
                  //bqc 传递数据格式  如 平胜  平是2胜是3  就传  13  胜胜 33 平平 11
                  // bf  如果 1:2  传 12
                  //数据格式 rspf-3#1.31,rspf-1#1.1&spf-3#1.98 &bf-10#8.25& sum-0#21.00 &bqc-33#1.70
                  //没有的数据默认  rspf-9#0&spf-9#0....  没有数据全部默认传9  并且  大概率 如7:7 以上的 统统传9
            , "rspf-3#1.46,rspf-1#3.65,rspf-0#5.85&spf-1#2.72&bf-11#6.00&sum-2#2.95&bqc-13#5.50");
            //方法可以返回 最大最小金额的 所有复合方案  数组组后可以看最小最大金额
            Console.WriteLine("最大金额方案");
            ] as string[])
            {
                if (string.IsNullOrEmpty(item))
                {
                    break;
                }
                Console.WriteLine(item);//最大金额所有符合的方案
            }
            Console.WriteLine("最小金额方案");
            ] as string[])
            {
                if (string.IsNullOrEmpty(item))
                {
                    break;
                }
                Console.WriteLine(item);//最小金额所有符合的方案
            }

        }

        /// <summary>
        /// 最大金额 最小金额 计算
        /// </summary>
        /// <param name="rq">让球</param>
        /// <param name="xx">数据格式</param>
        /// <returns></returns>
        public static object[] money(int rq, string xx)
        {
            ];//存当前满足条件情况的倍率
            ];//最大钱倍率
            ];//最小钱倍率
            ;//初始下标
            , maxs = , csh = ;//上面三个的初始赋值
            ;//名字
            ];//存所有情况
            ];//存让球情况
            , xr = ;//所有情况下标 和让球情况下标
            string[] a = xx.Split('&');//把玩法分开
            //把所有数据进行统计和
            ; k < a.Length; k++)
            {
                string[] b = a[k].Split(',');
                ; i < b.Length; i++)//去每个选项的名字 和 赔率
                {
                    , ) == "rs")
                    {
                        rrot[xr] = b[i];
                        xr++;
                    }
                    else
                    {
                        rot[xt] = b[i];
                        xt++;
                    }
                }
            }
            ;
            foreach (var item in sus)
            {
                if (item == null)
                {
                    break;
                }
                ; k < rrot.Length; k++)
                {
                    if (string.IsNullOrEmpty(rrot[k]))
                    {
                        break;
                    }
                    ].Length;
                     && ].Substring(jiequ - , )) == )
                    {
                        maxmin[mmint] = rrot[k];
                        mmint++;
                        mo *= ]);
                    }
                     && ].Substring(jiequ - , )) == )
                    {
                        maxmin[mmint] = rrot[k];
                        mmint++;
                        mo *= ]);
                    }
                     && ].Substring(jiequ - , )) == )
                    {
                        maxmin[mmint] = rrot[k];
                        mmint++;
                        mo *= ]);
                    }
                }
                ; i < rot.Length; i++)
                {
                    if (string.IsNullOrEmpty(rot[i]))
                    {
                        break;
                    }
                    ])))
                    {
                        maxmin[mmint] = rot[i];
                        mmint++;
                        mo *= ]);
                    }
                }
                 && mo != )
                {
                    maxs = mo;
                    mins = mo;
                    maxmin.CopyTo(maxto, );
                    maxmin.CopyTo(minto, );
                    csh = ;
                }
                 && mo > maxs)
                {
                    maxs = mo;
                    maxto = ];
                    maxmin.CopyTo(maxto, );
                }
                 && mo < mins)
                {
                    mins = mo;
                    minto = ];
                    maxmin.CopyTo(minto, );
                }
                mo = ;//初始化金额
                maxmin = ];//清空数组
                mmint = ;//数组小标清空
                cs++;
            }

            ] { maxto, minto };
        }

    }

    class bf
    {
        /// <summary>
        /// 比分名字
        /// </summary>
        public string name { set; get; }
        /// <summary>
        /// 模拟左比分
        /// </summary>
        public int bileft { set; get; }
        /// <summary>
        /// 模拟右比分
        /// </summary>
        public int biright { set; get; }
        /// <summary>
        /// 总和球
        /// </summary>
        public int sum { set; get; }
        /// <summary>
        /// 相差球
        /// </summary>
        public int diff { set; get; }
        /// <summary>
        /// 胜平负
        /// </summary>
        public int spf { set; get; }

    }

}