题目大意: 有n个人要过一条河,每个人过河都需要一个时间aiai,有一艘船,每次过河只能最多装两个人。两个人划船过河所需的时间都取决于过河时间长的那个人。比如,A,B两人过河所需时间分别为a,b,那么,他们成一条船过河所需的时间为:max{a,b}。现在让你安排一个过河方案,让所有人用最短的时间全部过河。 问题分析: 首先,我们先来研究一个问题,就是在没过河的人有4个及4个以上的情况下,我们设其中四人为a、b、c、d,并且所需时间a<b<c<d,那么,我现在想让c、d过河,然后再让船回到过河前的位置,准备好继续送其他的人过河。那么我这里有两种运载方式: 1.过河顺序为:ac、a、ad、a 时间消耗:t1=2a+c+d 2.过河顺序为:ab、a(b)、cd、b(a) 时间消耗:t2=a+2b+d t1−t2=a+c−2b 这也就是说,选择两种方案的哪一种,和a+c−2b的值有关。