笔趣阁 > 科幻小说 > 编程之战 > 章节目录 第六十四章 最短编排

 推荐阅读: 重生弃少归来 黎明之剑 说好的末世呢 七根凶简 民调局异闻录之勉传 学霸的黑科技系统 无限英灵神座 快穿攻略,病娇男主,宠翻天! 终极透视眼 纵横诸天的武者

编程之战 第六十四章 最短编排


从动物园回到任务中心,杨成抽取了一个随机任务。
    在一家颇有规模的幼儿园里,他认识了一位李老师。
    李老师很年轻,很美,她脸上总是带着和煦的微笑,对孩子们既有耐心又很关爱,她说:“孩子们的欢声笑语是我最喜欢的音乐”。
    临近年末了,李老师打算组织一场活动,将孩子们分组,编排一些节目给家长们看。
    “成哥,能不能帮帮我”,李老师眨巴着眼睛看着杨成。
    “请说”,杨成对于这样一位心地善良的老师很有好感。
    “是这样的,我得将孩子们编排分组,因为节目的需要,每一组的人数都必须是连续的数字”。
    “拿我现在带的班来说,有14个孩子”。
    “可以这样分组:”
    “第一组5个,第二组4个,第三组3个,第四组2个,这样5,4,3,2都是连续的数字”。
    “分的组数尽可能越少越好,这样可以减少编排时间”。
    “我们园区还有几十个班等着分组,所以我才求助于你的”。
    “没问题,李老师,你先去带孩子吧,等我想好了再来告诉你”,说着,杨成在园外踱起了步。
    这个问题得先做一些基础的数据测试,再来观察规律。
    像孩子数量为17,19,21....这样的奇数,都可以分成2组,因为奇数都可以拆成2个连续数字之和。
    比如17可以分成8和9两组,而且组数为2显然是最少的分法。
    那么如果孩子数量为偶数的情况呢?
    可以采用穷举法。
    假如一个班有12个孩子,穷举法如下所示:
    从1开始,1+2+3+4+5=15,超过了12,显然不行,跳过。
    从2开始,2+3+4+5=14,还是超过了12,跳过。
    从3开始,3+4+5=12,正好为12,可以算作一种分法,但组数3不一定是最少的分法。
    从4开始,4+5+6=15,超过了12,跳过。
    ......
    最后得到结果:
    第一组3个孩子。
    第二组4个孩子。
    第三组5个孩子。
    一共有3组。
    一般的偶数情况都可以用这个方法求解,但有一些情况是无解的。
    比如说,如果一个班有16个孩子,那么不管怎么分,都得不到连续的分法。
    穷举法的确有效率问题,但对于这个问题的应用,还是能够应付的。
    “李老师,有办法啦”,杨成轻声呼唤道。

温馨提示:方向键左右(← →)前后翻页,上下(↑ ↓)上下滚用, 回车键:返回列表

上一章章节目录下一章