3 해설
-
-2
#include<。。。。。。> #define int long long using namespace std; int t,v,n; int f[-201][10011]; int a[10001]; int b[10001]; main(){ cin>>t; while(t--){ memset(f,0,sizeof(f)); cin>>n>>v; for(int i=1;i<=n;i++) cin>>a[i]; for(int i=1;i<=n;i++) cin>>b[i]; for(int i=1;i<=n;i++){ for(int j=0;j<=v;j++){ f[i][j]=f[i-1][j]; if(j>=b[i]){ f[i][j]=max(f[i][j],f[i-1][j-b[i]]+a[i]); } } } cout<<f[n][v]<<endl; } return 0; }
정보
- ID
- 494
- 시간
- 1000ms
- 메모리
- 128MiB
- 난이도
- 2
- 태그
- 제출 기록
- 143
- 맞았습니다.
- 43
- 아이디