Napisałem program który sprawdza czy okregi się przecinają ale strasznie długo mi ten program działa da się przyspieszyć jego pracę?
#include <iostream>
#include <vector>
#include <sstream>
#include<cmath>
using namespace std;
int main()
{
vector <float> tab1;
string line;
float tmp,ab;
stringstream ss;
int ilosc=1,wejsc=0;
while(getline(cin,line).good() && !line.empty())
{
ss<<line;
for(int i=0;i<3;i++){
ss>>tmp;
tab1.push_back(tmp);
}
ss.clear();
if(wejsc>0)
{
for(int i=0;i<tab1.size()-3;i=i+3)
{
ab=sqrt((tab1[tab1.size()-3]-tab1[i])*(tab1[tab1.size()-3]-tab1[i])+(tab1[tab1.size()-2]-tab1[i+1])*(tab1[tab1.size()-2]-tab1[i+1]));
if(tab1[i+2]-tab1[tab1.size()-1]<ab &&tab1[i+2]+tab1[tab1.size()-1]>ab )
{
ilosc++;
break;
}
}
}
wejsc++;
}
cout<<ilosc;
return 0;
}