// Dos búsquedas binarias equivocadas: una no da el resultado y la otra no termina.
#include <iostream>
#include <vector>

#include "search.h"

int main() {
    std::vector<int> a = {2, 4, 6, 8, 10};
    std::cout << "buscar 10 en {2, 4, 6, 8, 10}\n";
    std::cout << "  correcta: " << first_at_least(a, 10) << '\n';
    std::cout << "  invariante débil: " << search_weak_invariant(a, 10) << '\n';

    std::vector<int> b = {2, 4};
    std::cout << "buscar 9 en {2, 4}\n";
    std::cout << "  correcta: " << first_at_least(b, 9) << '\n';
    std::cout << "  con lo = mid: " << search_lo_is_mid(b, 9, 1000) << " (cortada a las 1000 vueltas)\n";
}
