这个任务需要手动完成,不使用计算机。
然而,如果将情况进行概括,我想可以通过图搜索来解决,但是应该考虑到图的大小。如果每个顶点代表“状态”,那么状态数估计为2N⋅L,其中N是人数,L是手电筒的长度。每个状态都包含信息,每个人在哪一侧以及手电筒剩余时间。如果有从初始状态到所有人都在营地一侧的路径,那么这条路径就是解决方案。
这是创建状态的最明显的方式,但也许你可以用更有效的方法来做到这一点(当前状态数量和运行时间与输入大小呈指数关系)。
但是,对于像您提供的示例中那样小的规模,指数运行时间(使用图)是可以接受的。如果你建议编程解决方案而不是手动解决问题,面试官甚至可能会喜欢它。
你可能想看一下EWD 1255。