Cod sursa(job #2941331)
Utilizator | Data | 17 noiembrie 2022 17:28:49 | |
---|---|---|---|
Problema | Problema rucsacului | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.48 kb |
#include<fstream>
using namespace std;
ifstream cin("rucsac.in");
ofstream cout("rucsac.out");
int v[10001];
int main(){
int G,n;
cin>>n>>G;
for(int i=1;i<=G;i++)
v[i]=-1;
for(int i=1;i<=n;i++){
int g,p;
cin>>g>>p;
for(int j=G-g;j>=0;j--){
if(v[j]!=-1)
v[j+g]=max(v[j]+p,v[j+g]);
}
}
int sol=-1;
for(int i=0;i<=G;i++){
sol=max(sol,v[i]);
}
cout<<sol;
}