Есть ответ 👍

Код не выводит правильно информацию про двудольность графов,подскажите где ошибка
#include

using namespace std;

vector graph[100000];
char color[100000];

inline char invert(int c) {
return c == 1 ? 2 : 1;
}

void dfs(int v, char c) {
color[v] = c;

for (int u : graph[v]) {
if (color[u] == 0) {
dfs(u, invert(c));
}
else if (color[u] == c) {
cout << "Graph ne dvydolniy." << endl;
exit(0);
}
}
}

int main() {
const int n = 6;
bool bipartite_graph = true;
vector> graph =
{
{1,0,1,0,1,0},
{1,0,1,0,1,1},
{0,1,0,1,0,1},
{0,1,1,0,1,1},
{1,1,0,1,0,0},
{0,1,0,1,1,0}
};

for (int i = 0; i < n; i++) {
if (color[i] == 0) {
dfs(i, 1);
}
}

cout << "Graph dvydolniy." << endl;
}

197
371
Посмотреть ответы 1

Ответы на вопрос:


Вторичная полость тела заполнена жидкостью-целомом, выделительная система-метонефридии, нервная система- окологлоточное нервное кольцо и брюшная нервная цепочка.

Популярно: Информатика