hdoj 3496 Watch The Movie【二维背包】【DP】
2012-02-15 16:33
525 查看
/* 不优化会超时~,OMG。。。 */ #include <stdio.h> #include <string.h> #define N 105 #define M 105 #define L 1005 int max(int a, int b){ return a > b ? a : b; } int f[M][L]; int main() { int t, n, m, l, w, v, ans; int i, j, k; scanf("%d", &t); while(t--){ memset(f, 0, sizeof(f)); ans = 0; scanf("%d%d%d", &n, &m, &l); for(i=1; i<=n; i++) { scanf("%d%d", &w, &v); for(j=m; j>=2; j--) for(k=l; k>=w; k--) if(f[j-1][k-w]) //因为题目的特殊要求,需要这么处理。必须选择M部 f[j][k] = max(f[j-1][k-w]+v, f[j][k]); f[1][w] = v; } for(j=0; j<=l ;j++) ans = max(ans, f[m][j]); printf("%d\n", ans); } return 0; }
相关文章推荐
- (DP,二维背包)Watch The Movie--HDOJ
- HDOJ 3496 Watch The Movie(二维背包)
- HDOJ 3496 Watch The Movie (二维背包)
- HDOJ 3496 Watch The Movie(基本二维背包)
- HDOJ题目3496Watch The Movie(二维背包)
- HDU 3496 Watch The Movie 二维背包
- 3496 Watch The Movie 二维背包
- hud 3496 Watch The Movie(二维费用背包)
- hdu 3496 Watch The Movie(二维费用背包)
- HDU 3496 Watch The Movie 二维背包
- HDU 3496 Watch The Movie【二维背包】
- hdu 3496 Watch The Movie(二维背包)
- hdu 3496 Watch The Movie(二维背包)
- hdu 3496 Watch The Movie (二维背包简单题)
- HDU 3496 Watch The Movie【二维费用的0/1背包问题】
- hdu 3496 Watch The Movie (二维费用背包)
- hdu 3496 Watch The Movie(二维费用的背包问题)
- hdu 3496 Watch The Movie 二维费用背包
- hdoj Watch The Movie 3496 (二维01背包)好题
- 杭电 hdu 3496 Watch The Movie 二维背包