记阿里8.21笔试----过河问题

题目描述:
小强作为强班的班长,决定带着色含他在内的几个同学去春游路程走到一半发现前面有一条河流且只有一条小船经过实验后发现这个小船一次最多只能运送两个人而且过河的时间是等于两个人中体重较大的那个人的体重如果只有一个人那么过河时间就是这个人的体重现在小强想请你帮他分析如何安排才能在最短时间内使所有人都通过这条河流小强很懒他并不得知道具体怎么过河只要你告诉他最短的时间。

输入描述:
第一行输入一个整数工 表示有T组测试数据每组数据,第一行输入一个整数n,表示人数.接下来一行输入n个整数ai,表示n个人的体重。

输出描述:
每组测试用例数据输出一个答案。
示例1:
输入:
2
4
2 10 12 11
4 2 3 7 8
输出:
37
19

解题思路:
以每次将两个同学带到河对岸为单位,方案1,每次都带着体重最小的同学;方案2是先用体重最小的同学带着体重第二小的同学过河,将第二小的同学放到河对面,然后体重最小的回来,第二次的时候体重最大和倒数第二大的一起过河,体重第二小的同学回来。

记阿里8.21笔试----过河问题_第1张图片
反正都是带两个体重最大的过去,是用体重最小的一个一个的带过去还是他俩一块过去。

【奥利给】

你可能感兴趣的:(刷题)