渡河专题

渡河问题(贪心)

现在有一群人,到了一条河旁边,想要过河,但船只有一条,一次最多能载两个人,开到了对面还需要一个人负责把船开回来,而且若多人坐船,速度还是由慢的一个决定,现在求如何分配坐船,使总时间最短。 输入 输入t组数据,每组数据第1行输入n,第2行输入n个数,表示每个人过河的时间。 输出 输出t行数据,每行1个数,表示每组过河最少时间。 样例输入 1 4 1 2 5 10 样例输出 17 #

信息学奥赛第十节 —— 贪心算法(渡河问题POJ 1700 Crossing River + 拦截导弹的系统数量求解)

复习概念 贪心算法又叫贪婪算法,是指在对问题求解时,总是做出在当前看来是最好的选择。也就是说,贪心算法不从整体最优上加以考虑,它所做出的是在某种意义上的局部最优解。 无后效性:贪心算法不是对所有问题都能得到整体最优解,关键是贪心策略的选择,选择的贪心策略必须具备无后效性,即某个状态以前的过程不会影响以后的状态,只与当前状态有关。 贪心算法使用的前提:局部最优解一定能导致全局最优解。 贪心算法的

[Usaco2008 Mar]River Crossing渡河问题 简单DP

Farmer John以及他的N(1 <= N <= 2,500)头奶牛打算过一条河,但他们所 有的渡河工具,仅仅是一个木筏。 由于奶牛不会划船,在整个渡河过程中,FJ必须始终在木筏上。在这个基础 上,木筏上的奶牛数目每增加1,FJ把木筏划到对岸就得花更多的时间。 当FJ一个人坐在木筏上,他把木筏划到对岸需要M(1 <= M <= 1000)分钟。 当木筏搭载的奶牛数目从i-1增加到i时,FJ得多