0pts,help!
查看原帖
0pts,help!
1095806
Supa7onyz楼主2024/4/17 13:31
#include <iostream>
using namespace std;
int n,l,r,ans,a[1000000],w[1000000]; 
void dfs(int t){
	int sum=0;
	for (int i=1;i<=t-1;i++){
		sum+=w[i]*a[i];
	}
	if (sum>=r){
		return;
	}
	if (t==n+1){
		if (l<=sum&&sum<=r){
			ans++;
		}
		return;
	}
	for (int i=0;i<=1;i++){
		a[t]=i;
		dfs(t+1);
	}
	return;
}
int main(){
	cin>>n>>l>>r;
	for (int i=1;i<=n;i++){
		cin>>w[i];
	}
	dfs(1);
	cout<<ans;
	return 0;
}
2024/4/17 13:31
加载中...