#define USECHRONO #undef HAVE_MPI #include "eval.hpp" #include #include #include #include using namespace aed; using namespace std; bool even(int x) { return x%2==0; } bool odd(int x) { return x%2; } bool ge7(int x) { return x>=7; } bool le3(int x) { return x<=3; } bool div4(int x) { return x%4==0; } bool isprime(int x) { return is_prime(abs(x)); } bool isnotprime(int x) { return !is_prime(abs(x)); } //---:---<*>---:---<*>- COMIENZA CODIGO FUNCION --:---<*>---:---<*>---:---<*> // COMPLETAR DNI y NOMBRE AQUI: // Nombre: Andrés Jonas int DNI=44632504; void fillbalance_validacion(btree &B,btree::iterator itB,list &l){ if(l.size()==0) return; if(l.size()==1){ itB=B.insert(itB,*(l.begin())); return; } if(l.size()>1){ int tam=l.size(); int division=tam/2; list::iterator it=l.begin(); btree::iterator itB=B.begin(); list izquierdo; list derecho; advance(it,division); izquierdo.insert(izquierdo.begin(),l.begin(),it); it++; itB=B.insert(B.begin(),*it); it++; derecho.insert(derecho.begin(),it,l.end()); fillbalance_validacion(B,itB.left(),izquierdo); fillbalance_validacion(B,itB.right(),derecho); } } void fillbalance(btree &B,list &L) { if(L.size()==0) return; if(L.size()==1){ B.insert(B.begin(),*(L.begin())); return; } if(L.size()>1){ int tam=L.size(); int division=tam/2; list::iterator it=L.begin(); btree::iterator itB=B.begin(); list izquierdo; list derecho; advance(it,division); izquierdo.insert(izquierdo.begin(),L.begin(),it); it++; itB=B.insert(B.begin(),*it); it++; derecho.insert(derecho.begin(),it,L.end()); fillbalance_validacion(B,itB.left(),izquierdo); fillbalance_validacion(B,itB.right(),derecho); // COMPLETAR AQUI... } } //---:---<*>---:---<*>- FINALIZA CODIGO FUNCION --:---<*>---:---<*>---:---<*> int main() { Eval ev; int vrbs=0; ev.eval<1>(fillbalance,vrbs); return 0; }