Cod sursa(job #2521516)
Utilizator | Data | 10 ianuarie 2020 23:51:08 | |
---|---|---|---|
Problema | Numarare triunghiuri | Scor | 0 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.7 kb |
#include <fstream>
#include <algorithm>
using namespace std;
int v[801];
ifstream fin("nrtri.in");
ofstream fout("nrtri.out");
int main(){
int a,i,i2,i3,x,y,z,k=0;
fin>>a;
for(i=1;i<=a;i++){
fin>>v[i];
}
sort(v+1,v+1+a);
for(i=1;i<=a;i++){
x=v[i];
i2=i+1;
while(i2<=a){
y=v[i2];
i3=i+2;
i2++;
if(y>2*x) i2=2000000000;
else {
while(i3<=a){
z=v[i3];
if(x+y>z) k++;
else if(x+y<z) i3=2000000000;
i3++;
}
}
}
}
fout<<k;
return 0;
}