Skip to content

Instantly share code, notes, and snippets.

@abrhm
Created May 14, 2013 20:33
Show Gist options
  • Save abrhm/5579272 to your computer and use it in GitHub Desktop.
Save abrhm/5579272 to your computer and use it in GitHub Desktop.
double mintav(Pont* tomb, int size){
double tav=0;
if (size==1)
return 0;
if (size <= 3){
tav = tomb[0].tav(tomb[1]);
if (size == 3) {
double temp = tomb[0].tav(tomb[2]);
if (temp < tav)
tav=temp;
temp = tomb[1].tav(tomb[2]);
if (temp < tav)
tav=temp;
}
}
else {
Pont* also = new Pont[(size/2)];
Pont* felso = new Pont[(size/2)+1];
for (int i=0;i<=(size/2); i++){
also[i]=tomb[i];
}
int k=0;
for (int i=(size/2)+1; i<size ; i++){
felso[k] = tomb[i];
k++;
}
//cout << vagotav <<"asdfasdff";
//rekurzív távmérés "Oszd meg!"
double alsotav=mintav(also,(size/2));
double felsotav;
if (size%2==0){
felsotav=mintav(felso,(size/2));
}
else {
felsotav = mintav(felso, (size/2)+1);
}
if (alsotav<felsotav) {
tav = alsotav;
}
else {
tav = felsotav;
}
delete[] also;
delete[] felso;
}
return tav;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment