Cod sursa(job #1981896)

Utilizator LepoLepoRadu Sebastian LepoLepo Data 17 mai 2017 09:56:14
Problema Numarare triunghiuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("nrtri.in");
ofstream g("nrtri.out");

int n,p,x[100],T[100],nr=0;

void citire(int &n,int T[])
{
f>>n;
for(int i=1;i<=n;i++)
f>>T[i];}

int valid(int k)
{
if(k>1&&(x[k-1]>=x[k]))
return 0;
return 1;}

int sol(int k)
{
 if(k!=3)
 return 0;
 if(!(T[x[3]] > T[x[1]]+ T[x[2]]) && !(T[x[2]] > T[x[1]] + T[x[3]]) && !(T[x[1]] > T[x[2]] + T[x[3]]))
    return 1;
    return 0;
}

void BKT()
{int k;
k=1;
x[k]=0;
while(k!=0)
if(x[k]<n)
{x[k]=x[k]+1;
if(valid(k))
if(sol(k))
nr++;
else
{k++;
x[k]=0;}}
else
k--;}

int main()
{
citire(n,T);
BKT();
g<<nr;
return 0;}