• 小陈现有2个任务A,B要完成,每个任务分别有若干步骤如下 一道网上没啥题解的难题(至少我是这么觉得的)


    小陈现有2个任务A,B要完成,每个任务分别有若干步骤如下:A=a1->a2->a3,B=b1->b2->b3->b4->b5.在任何时
    候,小陈只能专心做某个任务的一个步骤.但是如果愿意,他可以在做完手中任务的当前步骤后,切换至另一个任务,从上次此任务第一个未做的步骤继续.每个任务的步骤顺序不能打乱,例如……a2->b2->a3->b3……是合法的,而……a2->b3->a3->b2……是不合法的.小陈从B任务的b1步骤开始做,当恰做完某个任务的某个步骤后,就停工回家吃饭了.当他回来时,只记得自己已经完成了整个任务A,其他的都忘了.试计算小陈饭前已做的可能的任务步骤序列共有 种.

    先选出了b1———a1———a2———a3

    然后依次把b2,b2和b3,b2和b3和b4,...向里面插。并且满足bi的位置要<=bj (i<j)

    那么我们先解决一个问题、有n个物体要放在m个位置上,并满足(pos[i]表示第i个物体放的位置)pos[1] <= pos[2]<=pos[3]<=pos[4] ....<=pos[n].

    哈哈,那就简单了。就有了pos[1]<pos[2]+1<pos[3]+2.....<pos[n]+n-1;

    那么答案就是在m+n-1个位置中选n个位置了;

    就是C上面是n,下面是n+m-1;

    haha;

    那么小陈的题目就变成了(楼主比较懒,自己写去吧)。。。

  • 相关阅读:
    Android资源列表
    GTD资源列表[070826更新] [GTD]
    Table显示滚动条
    html语言中的meta元素
    GridView分页的实现
    图解CSS的padding,margin,border属性
    javascript moveTo() 函数
    IE6 中的最大最小寬度和高度 css 高度 控制(兼容版本)
    enableEventValidation
    window.resizeTo()和window.open()
  • 原文地址:https://www.cnblogs.com/kczno1fans/p/7655194.html
Copyright © 2020-2023  润新知