#define USECHRONO #undef HAVE_MPI #include "eval.hpp" #include #include #include #include #include #include #include using namespace aed; using namespace std; //---:---<*>---:---<*>- COMIENZA CODIGO FUNCION --:---<*>---:---<*>---:---<*> // COMPLETAR DNI y NOMBRE AQUI: // Nombre: Candela Mariana Avila Costa int DNI=42308360; //---:---<*>---:---<*>---:---<*>---:---<*>---:---<*> // parte recursiva void subk(set &S,int k,set::iterator itS,setauxset,list>&subconj){ if(itS==S.end())return; //condiciones d stop if(k==0)subconj.insert(subconj.begin(),auxset);return; setD = auxset; auxset.insert(auxset.end(),*itS); itS++; if(auxset.size()==k)subconj.insert(subconj.end(),auxset); subk(S,k,itS,auxset,subconj); // sigue agregando subk(S,k,itS,D,subconj); } // wrapper subk list> subk(set &S,int k){ list>subconj; //todos los subconj q va a tener set::iterator itS = S.begin(); setauxset; //se van a ir creando p agregar a la lista subconj subk(S,k,itS,auxset,subconj); return subconj; } int prom_set(set &S){ set::iterator itS= S.begin(); float suma =0; int cant; while(itS!=S.end()){ suma += *itS; cant++; itS++; } float p = suma/cant; int p_entera = p; return p_entera; }; /// compara parte entera y la suma de cada subconj bool es_p_entera(setsub,setS){ int suma = 0; int p_entera = prom_set(S); set::iterator itS = sub.begin(); while(itS!=sub.end()){ suma += *itS; } return suma==p_entera; } bool prom_subc(set &S) { list> subconj, auxset; /* set::iterator itS = S.begin(); while(itS!=S.end()){ auxset = subk(S,) }*/ for(int i=0;i>::iterator itLS = subconj.begin(); while(itLS!=subconj.end()){ if(es_p_entera(*itLS,S)){ //compara con la parte entera de S return true; } itLS++; } return false; } int main() { Eval ev; int vrbs = 0; ev.eval<1>(prom_subc,vrbs); return 0; }