讨论 / c++的各位大虾帮我看看吧 为何无输出
蓝色精灵 2012-07-07 20:17:00
点我顶贴 收藏 删除
#include<iostream>

using namespace std;

void jh(int &a,int &b){

int c=a;

a=b;

b=c;

}

void hs(int a[],int b[],int c[],int d,int e,int f,int &g){

int h,k;

for(int n=0;n<=e-1;n++){

h=0;

for(int m=0;m<d;m++){

if(n==c[m]){

h=1;

break;

}

else

h=0;

}

if(h==0){

c[d]=n;

for(int m=0;m<=d;m++){

h+=a[c[m]];

}

if(h<=f){

k=0;

for(int m=0;m<=d;m++){

k+=b[c[m]];

}

if(k>g){

g=k;

}

}

else

break;

}

if(d!=e-1){

hs(a,b,c,d+1,e,f,g);

}

}

}

int main(){

int js,zds,zdxjb=0,t;

cin>>zds>>js;

int x[js],y[js],z[js];

for(int i=0;i<=js-1;i++){

cin>>x[i]>>t;

y[i]=x[i]*t;

}

for(int i=1;i<=js-1;i++){

for(int j=js-1;j>=i;j--){

if(x[j]<x[j-1]){

jh(x[j],x[j-1]);

jh(y[j],y[j-1]);

}

}

}

hs(x,y,z,0,js,zds,zdxjb);

cout<<zdxjb;

return 0;

}

查看更多回复
提交回复