struct node { int idx; int passed_nodes; // kolku e distancata int mood; node() {} node(int _idx, int _passed_nodes, int _mood) { idx = _idx; passed_nodes = _passed_nodes; mood = _mood; } bool operator < (const node &tmp) const { int score1 = 0, score2 = 0; if(mood > tmp.mood) { score1++; } else { score2++; } if(passed_nodes < tmp.passed_nodes) { score1++; } else { score2++; } return score1 < score2; } };