Код не выводит правильно информацию про двудольность графов,подскажите где ошибка
#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
Ответы на вопрос:
Вторичная полость тела заполнена жидкостью-целомом, выделительная система-метонефридии, нервная система- окологлоточное нервное кольцо и брюшная нервная цепочка.
Популярно: Информатика
-
2047liza02.02.2023 00:55
-
milka2018225.05.2021 00:13
-
BlackTaiger29.04.2023 08:48
-
Ksyusha89125.01.2021 12:48
-
891447819danilDanil27.03.2021 09:01
-
Котя546128.12.2021 03:09
-
ПаучьяХватка17.08.2022 02:05
-
RIGBY1920425.03.2022 16:37
-
tataynka113.09.2022 19:58
-
autosteklo77722.03.2022 03:37