Pagini recente » Cod sursa (job #2138618) | Cod sursa (job #2376288) | Cod sursa (job #1483885) | Cod sursa (job #2803409) | Cod sursa (job #1990605)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream Tudor("nrtri.in");
ofstream Preduna("nrtri.out");
int n, v[801], i, j, st, dr, mid, s;
int main()
{
Tudor>>n;
for(i = 0; i < n; i++)
Tudor>>v[i];
sort(v, v + n);
for(i = 0; i < n - 2; i++){
for(j = i + 1; j < n - 1; j++){
st = j + 1;
dr = n;
while(st < dr){
mid = (st + dr) / 2;
if(v[mid] < v[i] + v[j])
st = mid + 1;
if(v[mid] > v[i] + v[j])
dr = mid - 1;
if(v[mid] == v[i] + v[j])
dr = mid;
}
s += dr - j;
}
}
Preduna<<s;
}