#include<bits/stdc++.h> using namespace std; typedef long long ll; int main(){ ll n,l,r; scanf("%lld%lld%lld",&n,&l,&r); ll mi=1<<30; ll a[12]; for(ll i=0;i<n;i++) { scanf("%lld",a+i); mi=min(mi,a[i]); } vector<ll> dis(mi,1e18); priority_queue<ll,vector<ll>,greater<ll> > q; q.push(0); dis[0]=0; while(!q.empty()){ ll u=q.top();q.pop(); for(ll i=0;i<n;i++){ ll v=u+a[i]; if(dis[v%mi]>dis[u%mi]+a[i]) { dis[v%mi]=dis[u%mi]+a[i]; q.push(v); } } } l--; long long ans=0; for(ll i=0;i<mi;i++){ if(dis[i]<=l) ans-=(l-dis[i])/mi+1; if(dis[i]<=r) ans+=(r-dis[i])/mi+1; } cout<<ans<<endl; } // 5 6 8 9 10 // 2 0 2 1 1