diff --git a/Black_White_Tree_C++.cpp b/Black_White_Tree_C++.cpp new file mode 100644 index 0000000..405ee24 --- /dev/null +++ b/Black_White_Tree_C++.cpp @@ -0,0 +1,88 @@ +#include +using namespace std ; + +int visited[100009] , n ,point ,c , col1 , a[100009] , final_ans , present[100009] ; +vector < int >adj[100009] , ans[2][100009] ; + +int dfs(int i , int col) +{ + if(visited[i]) + return -1 ; + + visited[i]= 1 ; + + int tot =0 ; + + for(int j =0 ;j0) + { + tot+=val ; + // cout<>n ; + + for(int i = 1; i <=n ; i++) + cin>>a[i] ; + + for(int i =0 ; i>u>>v ; + + adj[u].push_back(v) ; + adj[v].push_back(u) ; + } + + int t = 0 ; + dfs(1 , 0 ) ; + + memset(visited , 0 , sizeof(visited)); + + dfs(1 , 1) ; + + cout<