POJ 1821 Fence】的更多相关文章

poj 1821 Fence \(solution:\) 这道题因为每一个粉刷的人都有一块"必刷的木板",所以可以预见我们的最终方案里的粉刷匠一定是按其必刷的木板的顺序排列的.这就提示了我们可以用线性 $ DP $,只需要将粉刷匠按必刷的木板排序即可. 设 $F[ $ i $ ][j]$ 表示前 $ i $ 个粉刷匠刷了前 $ j $ 快木板的最大收益(可以有木板不刷!).我们可以根据题意列出转移方程: 首先这个粉刷匠一块木板也不刷 这块木板不刷 这个粉刷匠从第k块木板刷到第 $ j…
/* poj 1821 n*n*m 暴力*/ #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #define maxn 110 #define maxm 16010 using namespace std; int n,m,f[maxn][maxm],ans; struct node{ int l,s,p; bool operator < (const…
题目链接:http://poj.org/problem?id=1821 题目分析来自:http://blog.csdn.net/tmeteorj/article/details/8684453 连续的N块木板,有K个粉刷匠,分别坐在第Si块木板前,每个粉刷匠不能移动位置,且最多能粉刷连续的Li块木板(必须包括Si或者不要该粉刷匠),每个粉刷匠粉刷一块木板可以得Pi块钱,求总共的最大利益. 题解:dp[i][j]代表前i个粉刷匠粉刷完成至多前j个木板的最大利益,状态转移有三种: 1.不需要第i个粉…
Fence Time Limit: 1000ms Memory Limit: 30000KB This problem will be judged on PKU. Original ID: 182164-bit integer IO format: %lld      Java class name: Main   A team of k (1 <= K <= 100) workers should paint a fence which contains N (1 <= N <…
单调队列优化dp 我们把状态定位F[i][j]表示前i个工人涂了前j块木板的最大报酬(中间可以有不涂的木板). 第i个工人不涂的话有两种情况: 那么F[i - 1][j], F[i][j - 1]就成为了转移状态的候选. 那如果第i个工人要涂的话,我们可以假设我们是从k+1涂到j的,根据题意可以求出k的取值范围,然后状态转移的条件限制了j的取值范围. 我们考虑每j从小到大增加的过程,j对应的k的取值是一个上界不变下届变大的区间,是一个滑动窗口,那我们可以用单调队列来维护决策k的最优候选. #in…
题解 以前做过很多单调队列优化DP的题. 这个题有一点不同是对于有的状态可以转移,有的状态不能转移. 然后一堆边界和注意点.导致写起来就很难受. 然后状态也比较难定义. dp[i][j]代表前i个人涂完前j个位置的最大收益. 然后转移考虑 第i个人可以不刷.dp[i][j]=dp[i-1][j]; 第j个木板可以不刷dp[i][j]=dp[i][j-1]; 然后当c[i].s<=j<=s[i]+l[i]-1时 dp[i][j]=p[i]*j+max(dp[i-1][k]-p[i]*k)其中j-…
POJ 3253 Fence Repair(修篱笆) Time Limit: 2000MS   Memory Limit: 65536K [Description] [题目描述] Farmer John wants to repair a small length of the fence around the pasture. He measures the fence and finds that he needs N (1 ≤ N ≤ 20,000) planks of wood, eac…
POJ 3253 Fence Repair (优先队列) Farmer John wants to repair a small length of the fence around the pasture. He measures the fence and finds that he needsN (1 ≤ N ≤ 20,000) planks of wood, each having some integer lengthLi (1 ≤ Li ≤ 50,000) units. He the…
poj 3253 Fence Repair 优先队列 Description Farmer John wants to repair a small length of the fence around the pasture. He measures the fence and finds that he needs N (1 ≤ N ≤ 20,000) planks of wood, each having some integer length Li (1 ≤ Li ≤ 50,000) u…
Fence Repair Time Limit:2000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit Status Practice POJ 3253 Appoint description:  hanjiangtao  (2014-11-12) System Crawler  (2015-04-24) Description Farmer John wants to repair a small len…