首页 > 其他分享 >宠物小精灵之收服

宠物小精灵之收服

时间:2023-02-11 17:25:38浏览次数:37  
标签:int 宠物 收服 小精灵 v1 v2 m1 m2 --

#include<bits/stdc++.h>
using namespace std;
const int N=1e3+10;
//三位01背包问题,把物品个数那一维去掉,就是二维了
int n,m1,m2;
int v1[N],v2[N];
int f[N][N];

int main()
{
    cin>>m1>>m2>>n;
    
    for(int i=1;i<=n;i++)
    cin>>v1[i]>>v2[i];
    
    for(int i=1;i<=n;i++)
    for(int j=m1;j>=v1[i];j--)
    for(int k=m2;k>=v2[i];k--)
    f[j][k]=max(f[j][k],f[j-v1[i]][k-v2[i]]+1);
    
    int res=0;
    
    for(int k=0;k<=m2;k++)
    if(f[m1][m2]==f[m1][k])
    {
        res=k;
        break;
    }
    
    printf("%d %d",f[m1][m2],m2-res);
    
    return 0;
}

 

标签:int,宠物,收服,小精灵,v1,v2,m1,m2,--
From: https://www.cnblogs.com/tolter/p/17112128.html

相关文章