lijie201602 2017-09-07 22:53:21
点我顶贴
收藏
删除
#include<cstdio>
int n,f[110]={0},a[110],b[110];
int max(int a,int b) { return a>b?a:b; }
int main()
{
scanf("%d",&n);
for(int i=1;i<=n;i++) scanf("%d",&a[i]);
for(int i=1;i<=n;i++) scanf("%d",&b[i]);
for(int i=1;i<=n;i++)
for(int j=99;j>=a[i];j--) f[j]=max(f[j],f[j-a[i]]+b[i]);
printf("%d",f[99]);
return 0;
}