hdu 3127 WHUgirls 二维完全背包

来源:互联网 发布:java 访问量统计 编辑:程序博客网 时间:2024/05/18 01:10
#include <stdio.h>#include <string.h>int max(int a,int b){    return a>b?a:b;}struct node{    int x,y,w;}e[11];int f[1001][1001];int main(){    int T;    scanf("%d",&T);    while(T--)    {        int n,a,b,i,j,k;        scanf("%d%d%d",&n,&a,&b);        for(i=0;i<n;i++)            scanf("%d%d%d",&e[i].x,&e[i].y,&e[i].w);        memset(f,0,sizeof(f));        for(i=0;i<=a;i++)        {            for(j=0;j<=b;j++)            {                for(k=0;k<n;k++)                {                    if(i>=e[k].x&&j>=e[k].y)                        f[i][j]=max(f[i][j],max((f[i-e[k].x][j]+f[e[k].x][j-e[k].y]),                                                (f[i][j-e[k].y]+f[i-e[k].x][e[k].y]))+e[k].w);                    if(i>=e[k].y&&j>=e[k].x)                        f[i][j]=max(f[i][j],max((f[i-e[k].y][j]+f[e[k].y][j-e[k].x]),                                                (f[i][j-e[k].x]+f[i-e[k].y][e[k].x]))+e[k].w);                }            }        }        printf("%d\n",f[a][b]);    }    return 0;}

原创粉丝点击