Cod sursa(job #3185161)

Utilizator reacHa4rrfe reac Data 18 decembrie 2023 10:00:16
Problema Numarare triunghiuri Scor 0
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.83 kb
#include <stdio.h>
#include <stdlib.h>
#define MAXN 2000
int v[MAXN];
FILE*fin;
FILE*fout;

void cit( int i, int n ) {
  if(i != n){
    fscanf(fin,"%d",&v[i]);
    cit( i+1, n );
  }
}
int main()
{

    fin = fopen("nrtri.in","r");
    fout = fopen("nrtri.out","w");
    int n,s = 0,i,u,p,max,j;
    fscanf(fin,"%d",&n);
    cit(0,n);
    for ( u = n - 1; u > 0; u-- ) {
      max = v[0];
      p = 0;
      for ( i = 1; i <= u; i++ )
        if ( v[i] > max ) {
          max = v[i];
          p = i;
        }
      v[p] = v[u];
      v[u] = max;
    }
    for(i = n-1; i >= 0; i--){
      j = i-1;
      while( v[j] + v[j-1] > v[i] ){
        u = 0;
        while(v[u] + v[j] <= v[i] && u < j)
          u++;
        s += j-u;
        j--;
      }
    }

    fprintf(fout,"%d",s);
    return 0;
}