首页 > TAG信息列表 > P2577
洛谷P2577 [zjoi2004]午餐---贪心+dp
题目链接:https://www.luogu.com.cn/problem/P2577 简单题意:两个窗口打饭,每个人有打饭和吃饭时间,求最快全部吃完的时间 让吃饭时间长的先打饭,应该比较容易想到,不管窗口数量是多少。但是之后就开始胡乱设计状态了。一开始想了个sb状态:dp[i][1/2]表示轮到第i个人,选择窗口1/2的最小时P2577 [ZJOI2005]午餐[DP]
题目描述 上午的训练结束了,THU ACM小组集体去吃午餐,他们一行N人来到了著名的十食堂。这里有两个打饭的窗口,每个窗口同一时刻只能给一个人打饭。由于每个人的口味(以及胃口)不同,所以他们要吃的菜各有不同,打饭所要花费的时间是因人而异的。另外每个人吃饭的速度也不尽相同,所以吃饭花费P2577 [ZJOI2005]午餐
贪心可得吃饭时间长的优先在前面打饭得到的解更优 证明过程: 假设第i个人打饭时间为a[i].da,第i个人吃饭的时间为a[i].cf,第j个人同理 假设a[i].cf>a[j].cf **所以就有两种情况: 1.第i个人在第j个人的前面,此时设最后一个人吃完饭的时间为t1 t1=max(a[i].cf+a[i].da,a[j].da+a洛谷P2577 午餐【贪心】【线性dp】
题目:https://www.luogu.org/problemnew/show/P2577 题意:n个人每个人有一个打饭时间和吃饭时间,将他们分成两个队伍。每个人打到饭之后就马上去吃饭。问怎么安排可以让总体的吃饭时间最短。 思路:首先贪心还是很好想的。某个队伍的总吃饭时间实际上是打饭结束+吃饭时间最晚的那个时间P2577 [ZJOI2005]午餐
神仙dp题。 先做一个贪心的排序:吃得慢的先去打饭。即按b从大到小排序。 接下来再做dp: 我们可以这么定义状态:\(dp[i][j][k]\)表示前\(i\)个人,第一队的人打饭用了\(j\)时间,第二队的人打饭用了\(k\)时间,再吃完饭的最少时间。 但是这样开的数组是\(200 \times 40000 \times 40000\),铁定