Pagini recente » Cod sursa (job #887225) | Cod sursa (job #2373754) | Cod sursa (job #1587618) | Cod sursa (job #1716348) | Cod sursa (job #2098928)
#include<fstream>
#include<algorithm>
using namespace std;
ifstream fin("teams.in");
ofstream fout("teams.out");
int n,a,b,s,f,mid,i1,i2,nr;
int v[100001];
int main(){
fin>>n>>a>>b;
for(int i=1;i<=n;i++)
fin>>v[i];
sort(v+1,v+n+1);
for(int i=1;i<=n;i++){
s=1;
f=n;
if(v[i]>b)
break;
while(s<=f){
mid=s+(f-s)/2;
if(v[mid]>=a-v[mid])
f=mid-1;
else
s=mid+1;
}
i1=f+1;
s=1;
f=n;
while(s<=f){
mid=s+(f-s)/2;
if(v[mid]<=b-v[i])
s=mid+1;
else
f=mid-1;
}
i2=f;
nr+=i2-i1+1;
if(i>=i1&&i<=i2)
nr--;
if(v[i]+v[i1]==a)
nr--;
if(v[i]+v[i2]==a)
nr--;
while(v[i1+1]==v[i1]){
i1++;
nr--;
}
while(v[i2-1]==v[i2]){
i2--;
nr--;
}
}
fout<<nr;
return 0;
}