课堂作业-电梯调度

     一,题目要求

石家庄铁道大学基础大楼一共有四部电梯,每层都有人上下,电梯在每层都停。信1201-1班的张一东觉得在每层都停觉得不耐烦。

由于楼层不太高,在上下课高峰期时时,电梯从一层上行,但只允许停在某一楼层。在一楼时,每个乘客选择自己的目的层,电梯则自动计算出应停的楼层。

问电梯停在那一楼层,能够保证这次乘坐电梯的所有乘客爬楼梯的层数之和最少。

二,设计思路

1)线性遍历,从第二层开始,求爬楼梯层数最少的

2)假设现在在第i层所有乘客爬电梯的层数总和为Y
   在第i层下的有N1  在第i层的有N2  在第i层上的有N3
   则如果在第i-1层下   Y+N3-N1-N2
     如果在第i+1层下   Y+N1+N2-N3

三,实验体会:最优层肯定在靠中间层数,所以从第二层开始遍历一遍会显的特别复杂但是却容易实现,所以在程序设计当中不能上来就做,所以有时候思维敏捷的可能会很受欢迎,这道题肯定不会作为现实项目去开发,因为这会脱离实际,因为停在中间而去高层的没办法乘坐电梯下楼这失去了电梯的意义,当然下楼肯定比上楼轻松所以该题目求的最有层实际上不应该是单纯数量上的爬楼层数最少。

原文地址:https://www.cnblogs.com/lllzy/p/4442674.html