287 条题解
信息
- ID
- 104
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 253
- 已通过
- 66
- 上传者
#include<bits/stdc++.h> using namespace std; int v[200],w[200],n,V; int f(int s,int k) { if(s<=0||k==0) return 0; if(s>=v[k])return max(f(s,k-1),f(s-v[k],k-1)+w[k]); else return f(s,k-1); } int main() { cin>>n>>V; for(int i=1;i<=n;i++) cin>>v[i]>>w[i]; cout<<f(V,n); }