当前位置: 首页 > news >正文

动态网站 下载百度如何推广产品

动态网站 下载,百度如何推广产品,模板建站和定制建站,哪里有网站建设培训班做了一个彩票程序,为了复式投注颇费了点脑筋,网上找了半天,才知道这个公式,比如36选7,如果买10个号,公式就是: 10!/ (10-7)!/ 7! 顺手做了一个测试程序&…

做了一个彩票程序,为了复式投注颇费了点脑筋,网上找了半天,才知道这个公式,比如36选7,如果买10个号,公式就是:

10!/ (10-7)!/ 7!

 

顺手做了一个测试程序:

  1. using System;
  2. public class Test{
  3.     public static void Main(string[] args){
  4.         int a = 5;  // 选择了几 
  5.         int b = 2;
  6.         try{
  7.             if(args.Length == 1){
  8.                 b = int.Parse(args[0]);
  9.             } else if(args.Length >= 2){
  10.                 a = int.Parse(args[0]);
  11.                 b = int.Parse(args[1]);
  12.             }
  13.         }catch{
  14.             Console.WriteLine("请正确输入");
  15.             return;
  16.         }
  17.         
  18.         int d = GetCount(a, b);
  19.         Console.WriteLine("{0},{1},{2}", a,b,d);
  20.     }
  21.     
  22.     //buyNum : 购买的数字个数 
  23.     //perNum : 每注要求的数字个数 
  24.     // 返回值为 : buyNum!/(buyNum-perNum)!/perNum! 
  25.     public static int GetCount(int buyNum, int perNum){
  26.         if(perNum == buyNum)
  27.             return 1;
  28.             
  29.         if(perNum > buyNum){
  30.             throw new Exception("后者必须比前者小!");
  31.         }else if(perNum <= 0){
  32.             throw new Exception("后者不能小于0!");
  33.         }
  34.         
  35.         // 这3行能提高一点效率,并降低一部分溢出的可能 
  36.         int diff = buyNum - perNum;
  37.         if (diff > perNum)
  38.             perNum = diff;
  39.             
  40.         int result = 1;
  41.         for(int i=perNum + 1;i<=buyNum;i++){
  42.             result *= i;
  43.         }
  44.         
  45.         for(int i=1;i<=buyNum - perNum;i++){
  46.             result /= i;
  47.         }
  48.         return result;
  49.         /*
  50.          8个号码选7=   8注
  51.          9个号码选7=  36注
  52.         10个号码选7= 120注
  53.         11个号码选7= 330注
  54.         12个号码选7= 792注
  55.         */
  56.     }
  57. }

下面是生成复式投注时,列出组合号码的列表的代码:

  1. /// <summary>
  2. /// 从数组中查找s个数字的组合,并返回全部组合(根据复式彩票投注的号码,返回对应的全部号码组列表)
  3. /// </summary>
  4. /// <param name="arr">数组(购买的数字列表)</param>
  5. /// <param name="s">大于0的整数(每注要求的数字个数)</param>
  6. /// <returns></returns>
  7. List<List<int>> GetCountList(int[] arr, int s)
  8. {
  9.     if (s < 1)
  10.         throw new Exception("选择个数不能小于1!");
  11.     if (arr == null || arr.Length == 0 || arr.Length < s)
  12.         throw new Exception("数组不能为空 或 小于必选个数!");
  13.     if (arr.Length == s)
  14.     {
  15.         #region 数组长度等于s时,直接返回1个组合
  16.         List<List<int>> l_ret = new List<List<int>>();
  17.         List<int> l_item = new List<int>();
  18.         foreach (int item in arr)
  19.         {
  20.             l_item.Add(item);
  21.         }
  22.         l_ret.Add(l_item);
  23.         #endregion
  24.         return l_ret;
  25.     }
  26.     if (s == 1)
  27.     {
  28.         #region 从数组中查找1个数字的组合,直接把数组各元素返回
  29.         List<List<int>> l_ret = new List<List<int>>();
  30.         foreach (int item in arr)
  31.         {
  32.             List<int> l_item = new List<int>();
  33.             l_item.Add(item);
  34.             l_ret.Add(l_item);
  35.         }
  36.         #endregion
  37.         return l_ret;
  38.     }
  39.     List<List<int>> l_arrTmp = new List<List<int>>();
  40.     for (int i = 0; i < arr.Length - s; i++)
  41.     {
  42.         // 后面的数任意取s-1个
  43.         int[] tmp = GetArray(arr, i);
  44.         List<List<int>> l_arrTmp1 = GetCountList(tmp, s - 1);
  45.         foreach (List<int> item in l_arrTmp1)
  46.         {
  47.             item.Insert(0, arr[i]);
  48.             l_arrTmp.Add(item);
  49.         }
  50.     }
  51.     List<int> l_lastItem = new List<int>();
  52.     for (int i = arr.Length - s; i < arr.Length; i++)
  53.     {
  54.         l_lastItem.Add(arr[i]);
  55.     }
  56.     l_arrTmp.Add(l_lastItem);
  57.     return l_arrTmp;
  58. }
  59. /// <summary>
  60. /// 把arr数组中,位置为beg之后的元素全部放入一个新数组返回(不包含beg元素)
  61. /// </summary>
  62. /// <param name="arr"></param>
  63. /// <param name="beg"></param>
  64. /// <returns></returns>
  65. private static int[] GetArray(int[] arr, int beg)
  66. {
  67.     int[] tmp = new int[arr.Length - (beg + 1)];
  68.     for (int i = beg + 1; i < arr.Length; i++)
  69.         tmp[i - (beg + 1)] = arr[i];
  70.     return tmp;
  71. }

 

 

 

 

 

 

http://www.hkea.cn/news/909296/

相关文章:

  • 个人可以建论坛网站吗福清网络营销
  • 济南做网站优化价格百度推广网站一年多少钱
  • 做网上商城网站哪家好杭州seo靠谱
  • 做营销网站制作关键词优化课程
  • 网站移动终端建设口碑营销成功案例
  • 美国做试管婴儿 网站推广普通话宣传语
  • 网站备案信息查询系统软文发布平台媒体
  • 泊头哪给做网站的好制作网页的教程
  • 漳州建设银行网站首页在百度上打广告找谁
  • 网站免费建站k网络营销策划方案书
  • 网站建设类公网店推广的作用
  • 安平做网站除了百度指数还有哪些指数
  • 做网站公司 蓝纤科技知乎怎么申请关键词推广
  • 临沂免费做网站发表文章的平台有哪些
  • 网站推广的方式包括哪些广西网站建设制作
  • 杭州营销网站建设东莞网站建设哪家公司好
  • 企业做营销型网站手机如何制作网页
  • 连云港网站关键词优化seo自学教程
  • 网站全站出售淘宝关键词排名怎么查询
  • 龙口市规划建设局网站查询收录
  • 学校网站建设注意什么东莞网站营销推广
  • 网站设计模板是什么百度网盘人工客服电话多少
  • wordpress文章收缩长春seo优化企业网络跃升
  • 网站地图调用希爱力双效片骗局
  • 珠海网站建设维护友情链接买卖代理
  • 武汉企业网站推广外包网络广告营销案例分析
  • 深圳哪里有做网站的汕头seo排名收费
  • 如何用腾讯云主机做网站株洲发布最新通告
  • 中国建设银行官网站下载信息流广告投放公司
  • 合肥建站平台网络平台推广是干什么