Cod sursa(job #36792)
Utilizator | Ionescu Robert Marius Robytzza | Data | 24 martie 2007 01:31:45 |
---|---|---|---|
Problema | Numarare triunghiuri | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.56 kb |
#include<fstream.h>
int main(){
ifstream fin("nrtri.in");
ofstream fout("nrtri.out");
int N;
long int a[800];
fin>>N;
for (short i=0;i<N;i++)
fin>>a[i];
short ok=0;
int p=N;
long long S=0;
while (ok==0){
ok=1;
p--;
for (int i=0;i<N;i++)
if (a[i]>a[i+1]){
long int aux=a[i];
a[i]=a[i+1];
a[i+1]=aux;
ok=0;} }
long int P=0;
int f=0;
for (int j=0;j<N-2;j++){
P=a[j]+a[j+1];
for (f=j+2;f<N;f++)
if (P<a[f])
break;
S+=f-j-2; }
fout<<S;
fin.close();
fout.close();
return 0;}