腾讯面试题 电梯最佳调度

缘起

相信每个有点自负的程序员在写字楼里面等电梯的时候都会有想过电梯的调度算法.

1
2
3
4
5
6
7
8
9
10
11
12
腾讯面试题

问题如下:

一座楼里没有楼梯,只有一架电梯,
电梯一次最多只能乘3人,
已知楼共有20层,每层有一个人,
每个人都有1~20中唯一的编号,他们要去对应的楼层。
电梯初始状态:在一楼。
目标状态:每个人在相应楼层。

试编写一个算法,完成目标状态,而且使电梯移动最小距离。

我知道此题是因为 腾讯笔试题电梯问题思路和初步的算法_討論一下 [问题点数:20分,结帖人zhanzongru]

这里的炒鸡热闹的讨论.

Read More

编程之美 电梯优化

缘起

1
2
3
4
5
编程之美
一幢m层楼高的楼房(1层是地表),只有一部电梯,一个电梯箱中有n个人,但是每个人要去的楼层不一样
现在输入每个人要去的楼层(相同楼层一样输入,不能省略).如果电梯可以在每个人要去的目标楼层停留的话
则每个人需要走的楼梯数目之和是0.但是电梯用电有限制,所以至多能停留k次,现在要你安排一个最佳停留方案
所谓最佳是指使得所有人走楼梯的层数之和最小

Read More