Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
153485 陈家宝 收服精灵 C++ 通过 100 0 MS 316 KB 467 2024-07-03 13:35:21

Tests(5/5):


#include<bits/stdc++.h> using namespace std; int M,K,n,Max=-1,dp[1050][700],m[1050],k[1050]; int main(){ scanf("%d%d%d",&M,&K,&n); for(int i=1;i<=n;i++)scanf("%d%d",&m[i],&k[i]); for(int i=1;i<=n;i++)for(int j=M;j>=m[i];j--)for(int p=K;p>=k[i];p--)dp[j][p]=max(dp[j][p],dp[j-m[i]][p-k[i]]+1); int Ans=K; for(int i=0;i<=K;i++) if(dp[M][i]>Max){ Max=dp[M][i]; Ans=K-i; } printf("%d %d",Max,Ans); return 0; }


测评信息: