5 #include "../boys/allboys.h" 6 #include "../girls/allgirls.h" 7 #include "../gifts/gift.h" 8 #include "../couples/couple.h" 9 #include "../utils/read_data.h" 10 #include "../utils/couple_utils.h" 11 #include "../search/all_search.h" 12 #include "../utils/logger/logger.h" 14 #include "../configs.h" 21 int main(
int argc,
char **argv)
30 searchMethod = atoi(argv[1]);
37 logger.
info(
"Processing for question 5",
true);
38 logger.
log(
"boys", std::to_string(boys.size()) +
" record read",
true);
39 logger.
log(
"girls", std::to_string(girls.size()) +
" record read",
true);
40 logger.
log(
"gifts", std::to_string(gifts.size()) +
" record read",
true);
42 std::vector<Couple> couples =
makeCouples(boys, girls, &logger);
44 logger.
log(
"couples", std::to_string(couples.size()) +
" formed",
true);
47 switch (searchMethod) {
60 int nBoys = boys.size();
62 logger.
info(
"Created list of boys to search for",
true);
64 for (
auto name : namelist) {
65 std::cout << name <<
' ';
67 std::cout << std::endl;
77 std::vector< std::string > randomNames;
79 std::srand(std::time(0));
82 randomNames.push_back(
"boy-"+std::to_string( std::rand()%nBoys ));
int main(int argc, char **argv)
std::vector< Gift > readAllGifts(std::string filename)
void info(const std::string msg, bool print=false)
void log(const std::string type, const std::string msg, bool print=false)
std::vector< Girl * > readAllGirls(std::string filename)
std::vector< std::string > getNamesToSearch(int nNames, int nBoys)
std::vector< Boy * > readAllBoys(std::string filename)
std::vector< Couple > makeCouples(int k, std::vector< Boy * >, std::vector< Girl * >, Logger *logger)
virtual void findGirlfriends(std::vector< std::string > namelist, Logger *logger)=0