Cod sursa(job #110417)

Utilizator MirageRobert Sandu Mirage Data 26 noiembrie 2007 18:51:57
Problema Numarare triunghiuri Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.56 kb
#include<stdio.h>
#include<stdlib.h>
#include<algorithm>
using namespace std;
int main () {
	int n,v[800],i,nr=0,j,k,s,cons=0,ok,sum=0;
	FILE *in=fopen("nrtri.in","r"), *out=fopen("nrtri.out","w");
	fscanf(in,"%d",&n);
	for(i=0;i<n;i++)
		fscanf(in,"%d",&v[i]);
	sort(v,v+n);
	for(i=0;i<n-2;i++){
		cons=0;
		for(j=i+1;j<n-1;j++){
			ok=0;
			s=j+1;
			nr=0;
			for(k=s;k<n&&v[k]<=v[i]+v[j];k++){
				s++;
				nr++;
				ok=1;
			}
			if(ok)
				cons=cons+nr;
		}
		sum+=cons;
	}
	fprintf(out,"%d\n",sum);
	fclose(in);
	fclose(out);
	return 0;
}