Cod sursa(job #545906)

Utilizator alexapoApostol Alexandru Ionut alexapo Data 4 martie 2011 09:01:17
Problema Numarare triunghiuri Scor 70
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include <fstream.h>
ifstream f("nrtri.in");
ofstream g("nrtri.out");
int n,v[804],i,j,s[4],nr;
void afis()
{  if ( !(v[s[1]]+v[s[2]]<v[s[3]]||v[s[2]]+v[s[3]]<v[s[1]]||v[s[1]]+v[s[3]]<v[s[2]])){
	//for(int i=1;i<=3;i++)
		//g<<s[i]<<' ';

	nr++;

	//g<<'\n';
}
}
int valid(int k)
{int i;
 for(i=1;i<k;i++)
	 if(s[k]<=s[i])
		 return 0;
	 return 1;



}

void back(int k)
{
	int i;
	for(i=1;i<=n;i++)
	{s[k]=i;
	if(valid(k))
		if(k==3)
			afis();	
		else 
			back (k+1);		
	}
}


int main()
{
	f>>n;
	for(i=1;i<=n;i++)
		f>>v[i];
	back(1);
	g<<nr<<'\n';
	f.close();
	g.close();
	return 0;
}