Pagini recente » Cod sursa (job #1171719) | Cod sursa (job #2561041) | Cod sursa (job #421448) | Istoria paginii runda/11111111111111111/clasament | Cod sursa (job #2509184)
#include <stdio.h>
int side[2000];
int main() {
FILE *fin = fopen( "nrtri.in", "r" );
FILE *fout = fopen( "nrtri.out", "w" );
int n, i, j, k, u, p, max, modes;
fscanf( fin, "%d", &n );
for ( i = 0; i < n; ++i ) {
fscanf( fin, "%d", &side[i] );
}
for ( u = n - 1; u > 0; --u ) {
max = side[0];
p = 0;
for ( i = 1; i <= u; ++i ) {
if ( side[i] > max ) {
max = side[i];
p = i;
}
}
side[p] = side[u];
side[u] = max;
}
modes = 0;
for ( i = 0; i < n - 2; ++i ) {
k = i + 2;
for ( j = i + 1; j < n - 1; ++j ) {
while ( k < n && side[i] + side[j] > side[k] ) {
++k;
}
modes += k - (j + 1);
}
}
fprintf( fout, "%d", modes );
fclose( fin );
fclose( fout );
return 0;
}