Pagini recente » Cod sursa (job #3151017) | Cod sursa (job #1856248) | Cod sursa (job #2228548) | Cod sursa (job #2087519) | Cod sursa (job #2180776)
#include <iostream>
#include <fstream>
#include <algorithm>
using namespace std;
ifstream in("medie.in");
ofstream out("medie.out");
int v[9002], n, i, j, caut, st, dr, mij;
long long sol;
int main()
{
in >> n;
for(i = 1; i <= n; i++) in >> v[i];
sort(v+1, v+n+1);
for(i = 1; i <= n; i++) {
for(j = i+1; j <= n; j++) {
caut = v[i]+v[j];
if(caut%2 != 0) continue;
else {
caut = caut/2;
st = i, dr = j;
while(st < dr) {
mij = st + (dr-st)/2;
if(v[mij] == caut) sol++, st = dr;
else if(v[mij] < caut) st = mij+1;
else if(v[mij] > caut) dr = mij;
}
}
}
}
out << sol;
return 0;
}