场景:毕业师兄请我们去凤雏吃饭。
流程:菜由后厨做好,然后由服务员端上饭桌,接着我们吃饭。
服务员调度算法:后厨的菜做好,由服务员选择端哪个菜上桌,这个服务员是兼洗碗的,她今天晚上还有个约会,所以她希望尽早地把碗刷完去约会,所以她的调度算法是,看哪个菜比较快吃掉,就先上哪个菜,这样我们吃完一个菜她就洗一个碗,不用拖太久下班。
我的调度算法:我不是每种菜都喜欢吃,我对菜有一个喜好排序。所以我的调度算法是,看我的喜好,1级喜好的比2级喜好的先吃掉。
菜凉了时间:一个菜从做好到吃完这段时间,都在凉,所以把这段时间叫做菜凉了时间,菜凉了时间越短,用户体验越好
菜垫:有的菜太烫了,需要垫子垫着。
菜名 |
后厨煮好的时间 | 吃掉这个菜所花时间/min | 需不需要菜垫 | 我的喜好 |
红烧肉 | 14:00 | 40 | 1 | 4 |
娃娃菜 | 14:20 | 30 | 0 | 2 |
乌鸡汤 | 14:30
| 50 | 1 | 3 |
红豆汤 | 14:50 | 20 | 0 | 5 |
糖醋鱼 | 15:00 | 10 | 1 | 1 |
假设今天饭桌上就只有一个菜垫,根据上表的信息,请算出哪一个菜第一个吃完,哪一个菜第二个......哪一个最后一个吃完?平均菜凉了时间是多少?
解:
14:00时,后厨把红烧肉做好了,服务员把红烧肉端上了桌,我开吃
14:20时,娃娃菜做好了,服务员把娃娃菜端上了桌,因为我更喜欢吃娃娃菜,所以我改吃娃娃菜,此时红烧肉还剩下20min吃完
14:30时,乌鸡汤做好了,但是由于饭桌上就一个菜垫,红烧肉在用,所以服务员没有把乌鸡汤端上桌,这时娃娃菜剩下20min吃完, 红烧肉剩下20min吃完。
14:50时,红豆汤做好了,由于红豆汤是冷的,不需要垫子,所以服务员把红豆汤上桌。
这个时候刚好娃娃菜吃完了,所以饭桌上有红烧肉和红豆汤。甜品得放最后吃,所以先吃红烧肉,此时红烧肉剩20min吃完。
15:00时,糖醋鱼也做好了,但是糖醋鱼也需要垫子,不上桌。这个时候,后厨那边还有一个乌鸡汤和一个糖醋鱼没上桌。
15:10时,红烧肉终于被我吃完了。终于腾出个垫子,累死爸爸了。这个时候,乌鸡汤和糖醋鱼就开始争着上桌了。服务员说今晚要约会,还是先上糖醋鱼吧,吃10min之后就可以洗碗了,早点下班见男神啊。糖醋鱼上了之后,乌鸡汤就不能上了,因为只有一个垫子。
我们吃完红烧肉,饭桌上有红豆汤和糖醋鱼。我是属猫的,很喜欢糖醋鱼,先吃糖醋鱼。
15:20时,糖醋鱼吃完啦,好饱啊。服务员看到有垫子了,马上就送上来了乌鸡汤。我觉得乌鸡汤也还行,就开吃了,红豆再最后喝吧。就开始喝乌鸡汤。
16:10时,这碗乌鸡汤是超级大碗的啊,喝了我50min,好饱啊,饭桌上剩个红豆汤,喝吧
16:30时,我把所有的菜都吃完了!
菜名 | 做好时间 | 吃掉需时 | 需要垫吗 | 我的喜好 | 吃完时间 | 菜凉了时间/min |
红烧肉 | 14:00 | 40 | 1 | 4 | 15:10 | 70 |
娃娃菜 | 14:20 | 30 | 0 | 2 | 14:50 | 30 |
乌鸡汤 | 14:30
| 50 | 1 | 3 | 16:10 | 100 |
红豆汤 | 14:50 | 20 | 0 | 5 | 16:30 | 100 |
糖醋鱼 | 15:00 | 10 | 1 | 1 | 15:20 | 20 |
平均菜凉了时间=(70+30+100+100+20)/5=64min |