不知道友友们现在还对满效率的小时钟算法感兴趣没,不过若馨还是想把这些精悍的文章推荐给大家,希望大家能够好好的利用这些前辈们积累下来的经验哦!
好了,开始。
餐厅的速度共受4个速度上限的限制,分别为:
顾客流量上限;
厨师的做菜速度上限;
服务员的服务速度上限;
桌椅摆放的速度上限。
取这4个速度上限中最小的那个作为整个餐厅的主菜销售速度。换句话说:不论何种情况,主菜的售出速度必然是上面四个速度上限中的其中之一。
对于顾客流量上限,似乎不需要多说,它仅仅由玩家的等级决定。这个大家都懂的,正是网上那张表上的数据。比如30级的顾客流量上限为:870人/小时,25级是804。其中1个人最多只吃1份主菜。
厨师的做菜速度上限,仅受厨师数量影响。1个厨师的做菜速度是450份/小时,2个厨师的做菜速度是900份/小时。可见现今所有等级(34级以下)均最多用2个厨师即可。
服务员的服务速度上限同时受服务员数量、厨房到桌椅的距离影响。
桌椅摆放速度上限同时受桌椅数量、厨房到餐桌的距离、门到餐椅的距离三方面因素共同影响。
首先必须掌握服务员端菜位置的概念。服务员端菜时总是站在靠近橱柜的第一行从左数起的第3到第8个位置。举例,假如第一行第2、4、5三个位置摆有桌椅或装饰,那么服务就只能站在第3、6、7、8这四个位置。第1、2以及第9以后的所有位置服务员都是不能在那端菜的。
厨房到餐桌的距离是指:从服务员端菜位置到最远的餐桌所经历的格子数。由于服务员可能有多个端菜位置、餐桌也有多个,所以具体的算法比较难以讲解。假设有A、B、C三张餐桌,有X、Y、Z三个服务员端菜位置。首先选定一张餐厅,比如A,尝试找出从服务员端菜位置最左边的那个(X)到A的最短路径,如果X不能到达A,再尝试找出接下来可能端菜位置(Y)到A的最短路径。直到第一次找到能够到达A的最短路径。找到这个路径后,数出它所经过的格子数,即为餐厅A到厨房的距离。同样的方法,再计算B到厨房的距离,C到厨房的距离。A、B、C的三个距离中最大的那个即为“厨房到餐桌的距离”。
门到餐椅的距离是指:从大门到最远的餐椅的距离。大门只有一个,餐椅可能有多个。与上面的计算相似,找出所有餐椅到大门路径经历格子数中最大的那个,即为门到餐厅的距离。
三种速度上限的计算公式如下,单位是“份/小时”。
举个简单的例子,隐身卡位摆法,2厨2服。此时,所有服务员到餐桌的最大距离是2格,套用公式:服务员的服务速度上限 = 9000 / ( 7 * 2 + 5) * 2 = 947 份/小时。
有了这一理论,我们可以解释几乎所有有关装修、桌椅摆放、厨师服务员的问题。比如为什么隐身传菜法是最有效率的摆法;比如为什么扩建可能会使同样的摆法效率降低;比如为什么厨师最多只需要雇佣1个;比如为什么到了一定级别就必须至少要用14张桌椅;比如……
还有些细节也没有完全描述,否则将会变得更为晦涩难懂。比如“厨房到餐桌的距离”在某些特殊情况下(主要是指不可达)会转为计算厨房到餐椅的距离。这是解释背靠背摆法的基础。再比如服务器与客户端在判断有效桌椅时有较大的不同。太多了,无法一一列举。