#define USECHRONO #undef HAVE_MPI #include "eval.hpp" #include #include #include #include #include #include using namespace aed; using namespace std; //---:---<*>---:---<*>- COMIENZA CODIGO FUNCION --:---<*>---:---<*>---:---<*> // COMPLETAR DNI y NOMBRE AQUI: // Nombre: Zeballos Bruno int DNI=43114431; int promedio(setK){ int sum = 0; auto it = K.begin(); while(it!=K.end()){ sum += *it; it++; } return sum / K.size(); } void subk(set &S, int k, set C, set::iterator itS, list> &LK) { if (itS == S.end()) return; if (k == 0) { LK.insert(LK.begin(),C); return;} //almacena set actual set D = C; //agrego *itS a C C.insert(C.end(), *itS); itS++; // se agrega C a la lista si C.size = k if (C.size() == k) LK.insert(LK.end(),C); //bifurcaci?n: //Rama 1: agregando subk(S,k,C,itS,LK); //Rama 2: no agregando subk(S,k,D,itS,LK); } list> subk(set &S) { set C; C.clear(); list> LK; set::iterator itS = S.begin(); for(int k=0;k &S, set &C) { //COMPLETAR! if(S.empty()) return; setmayor; int promedioS = promedio(S); list> subconjuntos = subk(S); for(auto X : subconjuntos){ if(promedio(X) promedioS){ mayor = X; } } } //---:---<*>---:---<*>- FINALIZA CODIGO FUNCION --:---<*>---:---<*>---:---<*> int main() { Eval ev; int vrbs=0; ev.eval<1>(get_largest_subset,vrbs); return 0; }