این سورس کد کوله پشتی 0-1که با توجه به منطق همین لینکه
اما برنامه اشکال داره،جواب نمیده ،میشه در این مورد هم کمک کنید؟
#include "iostream.h"
#include "conio.h"
void main() {
clrscr();
int i,j,n,l,p[10][20];
int weight,w[10],P[10];
cout<<"enter weight";
cin>>weight;
cout<<"enter your namber of objects";
cin>>n;
for(i=0;i<n;i++){
cout<<"enter w["<<i<<"]"<<"\n";
cin>>w[i];
cout<<"enter p["<<i<<"]"<<"\n";
cin>>P[i]; }
for(i=0;i<n;i++){
p[i][0]=0;
for(j=0;j<weight;j++){
p[0][j]=0;
for(i=1;i<n;i++){
for(j=1;j<weight;j++)
if(w[i]<=j){
if(p[i-1][j]<P[i]+p[i-1][j-w[i]]){
p[i][j]=(P[i]+p[i-1][j-w[i]]);
if(p[i-1][j]>P[i]+p[i-1][j-w[i]])
p[i][j]=p[i-1][j-w[i]];}
else
p[i][j]=p[i-1][j];
}
}
}
cout<< p[n][weight];}
getch();}