POJ1700 【经典过河问题,贪心】】的更多相关文章

题意: n个人过河, 船每次只能坐两个人, 然后船载每个人过河的所需时间不同, 问最快的过河时间. 思路: 仅仅启发一下思维: 我相信很多人一下子的想法就会有,每次最快和那些慢的过去,然后让最快一直来回,最后全部到对岸. 但是还有一种情况,我说说看,弱仅仅是想给大家一点思考,毕竟有意思. 你先让两个快的人从A过去至B,然后挑一个人回来至A,留下一个快的在B.OK,回来以后我让两个最慢的过去至B,然后让B那边的快的过来接A这边的快的.这样会不会节约一点啊. OK. 我们假设只有四个人,tf(the…
POJ题目链接:http://poj.org/problem?id=1700 N个人过河,船每次最多只能坐两个人,船载每个人过河的所需时间不同,问最快的过河时间. 思路: 当n=1,2,3时所需要的最小时间很容易求得,现在由n>=4,假设n个人单独过河所需要的时间存储在数组t中,将数组t按升序排序,那么 这时将单独过河所需要时间最多的两个旅行者送到对岸去,有两种方式:       1> 最快的(即所用时间t[0])和次快的过河,然后最快的将船划回来,再次慢的和最慢的过河,然后次快的将船划回来.…
一.经典例题 例一:排队接水 题意:n个人到r个水龙头接水,装满水桶的时间分别是t1,t2,t3.... 接水时间是整数且互不相等,怎样安排顺序使每个人等待的 时间和最小. 题解:排队越靠前计算次数越多,因此越小的排在前面. 交换一下看看 例二:均分纸牌 题意:n堆纸牌,每堆若干张,但纸牌总数为n的倍数,求最少 移动多少次每堆纸牌的张数一样. 题解:贪心模拟,先让第一个人纸牌达到平均数,只交换1.2两 人的纸牌,不用考虑第2人纸牌不够给第1人的情况,因为分牌的 实际情况是让牌数最多的那堆先移动,…
题目描述: A group of N people wishes to go across a river with only one boat, which can at most carry two persons. Therefore some sort of shuttle arrangement must be arranged in order to row the boat back and forth so that all people may cross. Each pers…
#include<iostream> #include<algorithm> using namespace std; ]; int main() { int t,i; cin>>t; while(t--) { ; //每次f归0 cin>>n; ;i<=n;i++) cin>>a[i]; sort(a,a+n+); while(n) { ) { f+=a[]; break; } ) { f+=a[]; break; } ) { f+=a[…
题目描述 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石.组委会已经选择好了两块岩石作为比赛起点和终点.在起点和终点之间,有 NN 块岩石(不含起点和终点的岩石).在比赛过程中,选手们将从起点出发,每一步跳向相邻的岩石,直至到达终点. 为了提高比赛难度,组委会计划移走一些岩石,使得选手们在比赛过程中的最短跳跃距离尽可能长.由于预算限制,组委会至多从起点和终点之间移走 MM 块岩石(不能移走起点和终点的岩石). 输入输出格式 输入格式: 第一行包含三个整数 L,N,ML,N,M ,分别…
题目:http://ch.ezoj.tk/contest/CH%20Round%20%2356%20-%20%E5%9B%BD%E5%BA%86%E8%8A%82%E6%AC%A2%E4%B9%90%E8%B5%9B/%E8%BF%87%E6%B2%B3 分析: 首先要明确青蛙的最优策略,肯定是尽量往远的石头上跳. 假设现在青蛙在x石头上: 如果从x可以跳到后面的石头上,那么就让青蛙跳到最远的那个上去,不用加石头 如果从x没有可跳的石头,那么我们要加石头了,而且要让可跳的最远石头尽量近: 设上次…
http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1672 题意: 思路:其实这就是一个经典的区间贪心问题,只需要按照左端点排序,然后用优先队列维护,每次将右端点最小的点出队列. #include<iostream> #include<algorithm> #include<cstring> #include<cstdio> #include<vector> #includ…
一类经典的线段贪心 Description 公交车一共经过N(1<=N<=20000)个站点,从站点1一直驶到站点N.K(1<=K<=50000)群奶牛希望搭乘这辆公交车.第i群牛一共有Mi(1<=Mi<=N)只. 他们希望从Si到Ei去.公交车只能座C(1<=C<=100)只奶牛.而且不走重复路线,请计算这辆车最多能满足多少奶牛听要求.注意:对于每一群奶牛,可以部分满足,也可以全部满足,也可以全部不满足. Input 第1行: 三个整数: K,N,C. 由…
Description The cows have purchased a yogurt factory that makes world-famous Yucky Yogurt. Over the next N (1 <= N <= 10,000) weeks, the price of milk and labor will fluctuate weekly such that it will cost the company C_i (1 <= C_i <= 5,000) c…