Cod sursa(job #2812300)

Utilizator andreifilimonPopescu Filimon Andrei Cosmin andreifilimon Data 4 decembrie 2021 12:33:00
Problema Numarare triunghiuri Scor 0
Compilator c-64 Status done
Runda Arhiva de probleme Marime 0.93 kb
#include <stdio.h>
#define NMAX 2000
int v[NMAX+1];
int main()
{
    FILE *fin,*fout;
    fin=fopen("nrtri.in","r");
    fout=fopen("nrtri.out","w");
    int n,i,j,u,max,p;
    fscanf(fin,"%d",&n);
    for(i=1; i<=n; i++)
        fscanf(fin,"%d",&v[i]);
    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;
    }
    int nr=0,poz,cnt;
    for(i=1; i<=n-2; i++)
    {
        for(j=i+1; j<=n-1; j++)
        {
            poz=j+1;
            cnt=0;
            while(v[poz]<=v[i]+v[j] && poz<=n)
            {
                poz++;
                //printf("%d %d %d\n",i,j,poz);
                cnt++;
            }
            nr+=cnt;
        }
    }
    fprintf(fout,"%d",nr);
    fclose(fin);
    fclose(fout);
    return 0;
}