biclique.h 863 Bytes
#ifndef DEF_HIPCOMP
#define DEF_HIPCOMP


#include <vector>
#include <tuple>

#include "boip.h"


class Biclique : public Boip
{
public:

    Biclique(int coef1, int coef2, double lambdaMin, double lambdaMax, double U2, unsigned int ncores,
             const std::vector < std::tuple < unsigned int, unsigned int, unsigned int, float, unsigned int > > &v, const std::vector < std::vector < unsigned int > > &NvBs);

    Biclique(const Biclique& that);

    ~Biclique();

    //void add_bj_ct(std::vector< unsigned int > c);

    int solve(BoipSolution& s);

    Biclique& operator=(const Biclique& that);

private:
    std::vector < std::tuple < unsigned int, unsigned int, unsigned int, float, unsigned int > > vertices; //vector to store the vertices
    std::vector < std::vector < unsigned int > > NvB; //vector to store the non-adjacent vertices
};

#endif