IT民工
加油!
摘要: 这道题还是0-1背包问题,看一个队能拿到的最大价值是多少并输出。开始理解错题意,将每个人能拿的最大重量加在一块,然后一起拿一次。其实应该是每个人都拿一次...#include<stdio.h>#include<string.h>#define MAXD 1005int f[MAXD * 31];int p[MAXD], w[MAXD];int c, ans, T, N, G;int max( int a, int b){ return a > b ? a : b;}int main(){ scanf( "%d", &T); while( 阅读全文
posted @ 2011-12-02 22:43 找回失去的 阅读(190) 评论(0) 推荐(0) 编辑
摘要: 这道题给定一个时间上限,然后一个数字N,后面跟着N首歌的时间长度,要我们求在规定时间w内每首歌都要完整的播放,最多能播放多少时间。一个比较典型的背包问题,但是要标记出我们选出的歌曲的编号,然后按顺序输出他们的长度,最后输出求的的最长播放时间。#include<stdio.h>#include<string.h>#define W 10005int f[W], a[25];bool vis[25][W];int w, N;int main(){ int j; while( scanf( "%d", &w) == 1) { scanf( &quo 阅读全文
posted @ 2011-12-02 14:42 找回失去的 阅读(487) 评论(0) 推荐(1) 编辑