// COMPLETA LO QUE FALTA #include #include using namespace std; struct Partida { int inicio; int final; float premio; int primeraPosterior; }; /*************************************************************************** VERSION 1: RECURSIVA, INEFICIENTE ***************************************************************************/ /*************************************************************************** VERSION 2: RECURSIVA, EFICIENTE ***************************************************************************/ /*************************************************************************** VERSION 3: NO RECURSIVA, EFICIENTE ***************************************************************************/ /*************************************************************************** EJEMPLO ***************************************************************************/ int main () { vector ejemploCompeticion1 = { {10, 14, 7000, 3}, {11, 12, 3000, 2}, {13, 17, 9000, 5}, {15, 17, 5000, 5}, {16, 19, 8000, -1}, {17, 18, 2000, -1} }; float resultado; resultado = maximoPremio(ejemploCompeticion1); cout << "Maximo premio: " << resultado << endl; if (resultado == 15000) cout << "OK" << endl; else cout << "MAL" << endl; vector ejemploCompeticion2 = { {10, 14, 7000, 3}, {11, 18, 3000, 7}, {13, 17, 9000, 5}, {15, 17, 5000, 5}, {16, 19, 8000, -1}, {17, 19, 2000, -1}, {17, 18, 4000, 7}, {18, 19, 10000, -1}, {18, 19, 6000, -1} }; resultado = maximoPremio(ejemploCompeticion2); cout << "Maximo premio: " << resultado << endl; if (resultado == 26000) cout << "OK" << endl; else cout << "MAL" << endl; }