CCCPaste

Untitled

#include 
#include 
#include 
using namespace std;
int dp[100000];
int n;
vectorw1;
vectorv1;
int rec(int weight1){
    if(weight1==0){
        return 0;
    }
    if(dp[weight1]!=-1){
        return(dp[weight1]);
    }
    int result=0;
    for(int j=0; j=0){
            result=max(result, rec(weight1-w1[j])+v1[j]);
        }
    }
    dp[weight1]=result;
    return result;
}
int main()
{

    int w;
    cin>>n>>w;
    for(int i=0; i>a>>b;
        w1.push_back(a);
        v1.push_back(b);


    }

    for(int i=0; i<100000; i++){
     dp[i]=-1;
    }

    cout<