Pagini recente » Cod sursa (job #3295663) | Cod sursa (job #3145252) | Cod sursa (job #3246921) | Cod sursa (job #422901) | Cod sursa (job #2064463)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("nrtri.in");
ofstream g("nrtri.out");
int v[300000];
int main()
{
int n, x, i, mx, j, nr = 0, grec;
f >> n;
for ( i = mx = 0; i < n; i++ ) {
f >> x;
v[x]++;
if ( x > mx ) {
mx = x;
}
}
for ( n = 0; n <= mx; n++ ) {
if ( v[n] > 0 ) {
v[n]--;
if ( n % 2 == 1)
grec = n/2+1;
else
grec = n / 2;
for ( i = n-1; i >= grec; i-- ) {
v[i]--;
for ( j = n-i; j <= i; j++ ) {
if ( v[i] > -1 && v[j] > 0 ) {
v[i]++;
v[n]++;
nr += v[i]* v[j] * v[n];
v[i]--;
v[n]--;
}
}
v[i]++;
}
v[n]++;
}
}
g << nr;
f.close();
g.close();
return 0;
}