经典小船过河问题,附Python,java题解
同学在面试时遇到了一个有趣的编程题,笔者很有兴趣,故以此文章作为记录。题目:N个人过河,船每次只能坐两个人,船载每个人过河的所需时间不同t[i],每次过河的时间为船上的人的较慢的那个,问最快的过河时间。(船划过去要有一个人划回来)。首先分析下场景,我们首先要考虑的是如何把耗时最长的人送过去,而题目中明确说明了每次计时都要以较慢的记,我们很容易想到,让最慢的两个人一起过,是比较好的策略。展开分析,发现可能的情况有两种。情况1:让最快的两个人和最慢的两个人组成一组,我们按照耗时长短分为a,b,c
原创
2020-09-05 22:22:08 ·
5531 阅读 ·
0 评论