多留一点余地,反而找得更快
剧场还没开门,舞台监督站在空座位前,先从门厅里叫来一小拨志愿者。他盯着灯光、话筒和侧门,心里盘算:这么几个人里,会不会已经有那套最省人的值班班底?
很多难找的答案,都像这件事。只要人手够了,再多加几个人也不会坏事,难的是把那套最小班底找出来。老办法很别扭,像是指望前面随手叫来的人,刚好全是那套隐藏班底里的关键人;不然就只能一张名单一张名单地试,越试越多。
新想法换了个口气:如果允许最后的人手比最省的多一点,前面这把就不用抓得那么准。舞台监督只要先叫到一部分关键人,剩下的岗位,再从门厅里很快补齐。这里也很好对上:志愿者就是候选项,隐藏班底就是最小可行解,多出来的那一点,就是允许的余地。要紧的是,沾上一部分,已经有用了。
这一松口,运气就不再那么脆。先多叫几个人,后面补位会轻松些;可叫得越多,想顺手碰到足够多关键人,也会更难。妙的地方在这儿:这套办法能算清楚,叫到哪一步最划算,再往上就不值了。要是一点余地都不给,它就又退回老路;只要肯放一点,整体就能比老办法更快。
有意思的是,它不一定非靠碰运气。舞台监督也可以提前备好一摞短名单,排得很讲究。这样不管那套隐藏班底藏在哪儿,总有一张名单,能先兜住足够多的关键人,后面照样能快补齐。
这招已经能用在几类出了名难找的任务里,比如挑出尽量少的一批点,让每条连线都碰到;或者拿掉少数麻烦点,让一个有方向的网络里不再绕圈。那些看着很小的速度提升,放到会一层层膨胀的搜索里,就会越滚越明显。以前非得一开始猜得很准,现在只要先猜中一截,路就已经打开了。