#include <iostream>
using namespace std;
const int N = 10010;
int res = 0;
int n,l,r;
int w[N];
int path[N];
void dfs(int u,int start, int sum){
if(sum >= l && sum <= r) {
res++;
return;
}
if(sum > r) return;
for(int i = start; i < n; i++){
path[u] = w[i];
dfs(u+1,i+1,sum + w[i]);
path[u] = 0;
}
}
int main(){
cin >> n >> l >> r;
for(int i = 0; i < n; i++){
cin >> w[i];
}
dfs(0,0,0);
cout << res;
return 0;
}