健康的荷斯坦奶牛WA 0,样例没过

image
image
另外附上代码:

#include<bits/stdc++.h>
using namespace std;
int a[1005],p[1005],b[1005],c[1005][1005];
long long n,m;
bool cmp(int a[],int n){
	for(int i=1;i<=m;i++){
		int s=0;
		for(int j=1;j<=n;j++){
		    s+=c[a[j]][i];
		    if(s<b[i]){
		    	return false;
			}
		}
	}
	return true;
}
void lx(int d,int z,int n){
	if(d==n+1){
		if(cmp(a,n)){
			cout<<n;
			for(int i=1;i<=n;i++){
				cout<<a[i]<<" ";
				exit(0);
			}
		}
	}
	else{
		for(int i=a[d-1]+1;i<=z;i++){
			if(p[i]==0){
				a[d]=i;
				p[i]=1;
				lx(d+1,z,n);
				p[i]=0;
			}
			else{
				return ;
			}
		}
	}
}
int main(){
    cin>>m;
    for(int i=1;i<=m;i++){
    	cin>>b[i];
	}
	cin>>n;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			cin>>c[i][j];
		}
	}
	for(int l=1;l<=n;l++){
		lx(1,n,l);
	}
	return 0;
}

哪里错了?求指点 :melting_face:

cmp里:
if(s < b[i]) 放循环外面