Cod sursa(job #2324754)

Utilizator mateilazarescumateilazarescu mateilazarescu Data 21 ianuarie 2019 15:00:50
Problema Numarare triunghiuri Scor 70
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.74 kb
#include<iostream>
#include<stdio.h>
using namespace std;
int v[804],vc[804],n,st[804],c;
void bkt(int k){
int elem,i,x=0,i1,i2,i3;
if(k==4){
    i1=st[1];
    i2=st[2];
    i3=st[3];
    if(v[i1]+v[i2]<v[i3])
        x=1;
    if(v[i2]+v[i3]<v[i1])
        x=1;
    if(v[i1]+v[i3]<v[i2])
        x=1;
    if(x==0){
        c++;
    }
    x=0;



}
else{
    for(i=1;i<=n;i++){
        elem=i;
        if(vc[elem]==0 and st[k-1]<elem){
            st[k]=elem;
            vc[elem]=1;
            bkt(k+1);
            vc[elem]=0;
        }
    }
}
}
int main() {
freopen("nrtri.in","r",stdin);
freopen("nrtri.out","w",stdout);
int i;
cin>>n;
for(i=1;i<=n;i++)
    cin>>v[i];
bkt(1);
cout<<c;
return 0;

}